Windows上MySQL数据库迁移到Linux

 

最近项目要数据库跨平台,可怜我个小渣渣,还一直想着怎么用Flumn采集windows上的数据库再存放到Linux上的MySQL数据库里(主要是不会,欢迎大佬嘲笑指导),后来在网上发现有很多简单的案例,然后借助网上大佬们的思路,加上自己总结验证,然后跟大家一起学习下

方法一:

1,进入本地MySQL的服务端

C:\Program Files\MySQL\MySQL Server 5.7\bin> mysql -h localhost -u root -p -D unicode          //  -D后面的unicode是数据库名

2,导出数据库文件

mysql>mysqldump -u root -p -r f:data.txt -B user

f:data.txt   是到出的数据放到f盘的data.txt文件中,-B后面的user是要导出的表名

3,去f盘查看数据,然后上传到linux       /opt/date/

4,打开linux,进入MySQL

mysql -u root -p

5,创建与windows上同名的数据库名,并设置字符集

mysql>create database unicode

mysql>alter database unicode character set utf8 //具体字符集设置,方法二里有

6,mysql>use unicode

      mysql>source /opt/date

7,查看喽

mysql>show tables;

 

方法二:

1,利用windows的客户端导出个.sql的文件

2,上传到Linux系统上 /opt/date

3,进入linux,mysql

mysql -u root -p

4,创建与windows上同名的数据库名,并设置字符集

mysql>create database unicode character set utf8;

mysql>show variables like "%char%";

       

       如果还有很多文件的格式不是utf8,进行下部修改

 

 

            MySQL在启动时自动使用/usr/share/mysql目录下的my-medium.cnf文件

            解决方法:只需要复制一个/usr/share/mysql目录下的.cnf文件到/etc目录,并改名为my.cnf即可

[client]

default-character-set=utf8

 

# The MySQL server

[mysqld]

character_set_server = utf8

 

[mysql]

no-auto-rehash

default-character-set=utf8

 

然后Linux系统下重启MySQL:service mysql restart

 

5,mysql>use unicode

      mysql>source /opt/date/xx.sql

6,查看喽

mysql>show tables;

 

 

推荐使用方法二,已验证,且直接就是以数据库方式导出,若迁移表,就直接将表的.sql文件导出就好。

 

 

 

 

 

 

注:若有侵权,请联系删除

你可能感兴趣的:(mysql)