我想从PHPMyAdmin(或MySQl Workbench)导出数据库,然后将其导入SQLite数据库,这样我就可以进行本地编辑和测试而不会破坏实时版本。我对SQL非常陌生,因此所有导出选项等在这一点上对我来说都很密集。我尝试通过命令使用默认的导出设置PHPMyAdmin
sqlite3 test_db.db < maindb.sql
也
sqlite3--> .read maindb.sql
但是这些引发了很多语法错误和“没有这样的表”错误。
我还尝试了在此处找到的经常被引用的脚本脚本,但是当我尝试使用从MySQL Workbench导出的命令运行该脚本时,请使用以下命令:
943776/mysql2sqlite.sh maindb.sql | sqlite3 test_db.sqlite
我收到以下错误:
mysqldump: Got error: 2002: Can't connect to local MySQL server through socket '/var/run/mysql.sock' (2) when trying to connect
我没有正确配置导出吗?
请注意,引用的脚本连接到数据库服务器本身。它并 不能 指望一个转储!
./mysql2sqlite -h example.com -u root -pMySecretPassWord myDbase | sqlite3 database.sqlite
这是应该执行脚本的方式。使用主机,用户名,密码和要转储的mysql数据库。
由于不同的DBMS(例如MySQL和sqlite3)之间的数据库转储和DBMS功能可能存在很大差异,因此我建议安装本地MySQL服务器,而不要使用sqlite3。对sqlite3进行更改时,您获得了什么优势?如果不进行更改,就无法将其应用于MySQL生产数据库?