终端创建MySQL数据库后如何使用?如何得到带表的.db格式文件?
MySQL数据导出为.db格式数据库文件的方法
首先明确:你当前看到的.ibd文件是MySQL InnoDB引擎的单表表空间专属文件,无法直接转换为.db格式文件。.db一般是SQLite数据库的默认存储文件,需要通过数据迁移的方式生成,具体操作步骤如下:
- 第一步:导出MySQL数据库的兼容格式SQL备份
使用MySQL自带的mysqldump工具导出指定库的内容,执行以下命令(替换方括号内的参数为你自己的配置):
mysqldump -u [MySQL用户名] -p --compatible=sqlite --default-character-set=utf8 [目标数据库名] > mysql_export.sql
执行后输入MySQL对应用户的密码,即可在当前目录得到兼容SQLite语法的SQL备份文件。
- 第二步:调整SQL文件的语法适配性
mysqldump导出的兼容文件仍存在少量SQLite不支持的语法,需要手动修改:- 删除所有
SET开头的配置语句、LOCK TABLES/UNLOCK TABLES锁表语句、ALTER TABLE ... ENABLE KEYS这类MySQL专属语句 - 删除建表语句末尾的
ENGINE=InnoDB DEFAULT CHARSET=utf8这类引擎、字符集配置内容 - 将所有
int(数字)的字段定义简化为int,SQLite不支持int长度声明
- 删除所有
- 第三步:导入SQL内容生成.db文件
执行以下命令打开SQLite交互界面,命令末尾的名称就是你最终生成的.db文件名:
sqlite3 your_database.db
在SQLite交互界面执行以下命令导入备份内容:
.read ./mysql_export.sql
导入完成后可执行.tables命令确认所有数据表都正常导入,确认无误后执行.exit退出即可,当前目录下生成的your_database.db就是你需要的含全部数据表的.db格式文件。
内容的提问来源于stack exchange,提问作者Witness1123
相关产品推荐
相关产品推荐

