ACCESS数据库(.mdb 文件)转 MYSQL

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

  • mydata.mdb
  • MYSQL用户名为:root 密码为:root
  • 新建一个MySQL数据库:mydb

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

$ sudo apt install mdbtools

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

图片描述

第二步,进入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%';

图片描述

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

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

图片描述

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

图片描述

重启mysql,成功

$ /etc/init.d/mysql restart

图片描述

Joker never give up

45 声望
2 粉丝
0 条评论
推荐阅读
两个月从算法小白到拿到第一份实习offer-亲身经历
两个月前,我还每天登录期刊网站查询自己的论文状态,想着增添一点申请博士的砝码。两个月后,我改变想法拿到第一份实习offer,读博之路渐行渐远。

Joker阅读 2.9k

初学后端,如何做好表结构设计?
这篇文章介绍了设计数据库表结构应该考虑的4个方面,还有优雅设计的6个原则,举了一个例子分享了我的设计思路,为了提高性能我们也要从多方面考虑缓存问题。

王中阳Go4阅读 1.7k评论 2

封面图
Vue+Express+Mysql全栈项目之增删改查、分页排序导出表格功能
本文记录一下实现一个全栈项目,前端使用vue框架、后端使用express框架、数据库使用mysql。此项目的意义不仅仅有助于我们复习nodejs相关知识、更有助于带前端新人,使其快速从整体全局角度中,理解常规后台管理系...

水冗水孚4阅读 2.6k

MySQL百万数据深度分页优化思路分析
一般在项目开发中会有很多的统计数据需要进行上报分析,一般在分析过后会在后台展示出来给运营和产品进行分页查看,最常见的一种就是根据日期进行筛选。这种统计数据随着时间的推移数据量会慢慢的变大,达到百万...

一个程序员的成长7阅读 862

封面图
深入理解MySQL索引底层数据结构
在日常工作中,我们会遇见一些慢SQL,在分析这些慢SQL时,我们通常会看下SQL的执行计划,验证SQL执行过程中有没有走索引。通常我们会调整一些查询条件,增加必要的索引,SQL执行效率就会提升几个数量级。我们有没...

京东云开发者3阅读 569

封面图
Laravel入门及实践,快速上手ThinkSNS+二次开发
【摘要】自从ThinkSNS+不使用ThinkPHP框架而使用Laravel框架之后,很多人都说技术门槛抬高了,其实你与TS+的距离仅仅只是学习一个新框架而已,所以,我们今天来说说Laravel的入门。

ThinkSNS1阅读 2.4k

一文了解MySQL中的多版本并发控制
作者:京东零售  李泽阳最近在阅读《认知觉醒》这本书,里面有句话非常打动我:通过自己的语言,用最简单的话把一件事情讲清楚,最好让外行人也能听懂。也许这就是大道至简,只是我们习惯了烦琐和复杂。希望借助...

京东云开发者2阅读 494

封面图

Joker never give up

45 声望
2 粉丝
宣传栏