今天记录一下ACCESS数据库如何在Linux平台上转换为MySQL数据库

准备工作:

mydata.mdb

MYSQL用户名为:root 密码为:root

新建一个MySQL数据库:mydb

第一步,.mdb文件在linux上是不能打开的,可以下载一个 mdbtools 工具打开

$ sudo apt install mdbtools

打开之后显示如下,mydata.mdb中有一张名为lt的表

c03afed67fdcbf5c9f949ec52fc25206.png

第二步,进入mydata.mdb所在目录下,将ACCESS下的表lt导入到数据库mydb中

$ mdb-tables mydata.mdb #查看mydata.db下的表

# lt

$ mdb-schema mydata.mdb mysql | mysql -uroot -proot mydb

# 将ACCESS下的表lt导入到数据库mydb中

导入之后可以查看是否成功,注意现在只是导入了空表

第三步,将ACCESS下lt表中的数据导入数据库mydb下lt表中

$ mdb-export -I mysql -D '%Y-%m-%d %H:%M:%S' mydata.mdb lt | mysql -uroot -proot mydb

可能遇到的问题:第三步可能报错,大意是插入了不正确的字符串。原因是MySQL字符编码引起的,解决方案如下:

1.进入mysql

$ mysql -uroot -proot

mysql> show variables like 'character%';

a0f118f3726acd4adc5953c801df13db.png

可以看到 character_set_database 和 character_set_server 的编码方式为 latin1,我们需要修改为utf8,修改方式如下:

$ sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf

171a0178bf1e736da9b9c379d4429b30.png

$ sudo gedit /etc/mysql/conf.d/mysql.cnf

d5a179135a1126ec4ec68913236de59c.png

重启mysql,成功

$ /etc/init.d/mysql restart

c2b99b46b02a42c8de983d915c05a021.png

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐