mysql数据库从一台服务器迁移到另一台服务器上

一、应用场景
      由于要把测试服务器上的数据库迁移到正式服务器上,因此需要做数据库的迁移。这里记录一下。

二、数据库迁移
1、新建数据库test

create database test;
1
2、进入数据库,创建数据表test

create table test1(id int(10) primary key, name varchar(30), age int(10));
1
3、生成.sql文件

(1)这里生成.sql文件,需要用到mysqldump,如果找到该命令的话,建立一个软连接到/usr/bin 下。例如,你的mysql 路径为:/usr/local/mysql,则执行
ln -fs /usr/local/mysql /usr/bin (PS:这里不需要进入到mysql执行命令)

(2)执行mysqldump命令

1)为某个数据库生成.sql文件

mysqldump -u 用户名 -p 数据库>你想要生成.sql文件的路径

2)只要数据库的表结构

mysqldump -u 用户名 -p -d 数据库>你想要生成.sql文件的路径

3)生成某个数据库下面对应某个表的表结构

mysqldump -u 用户名 -p -d 数据库名 表名>你想要生成.sql文件的路径

4)生成某个数据库下面对应某个表的表结构+表数据

mysqldump -u 用户名 -p -d 数据库名>你想要生成.sql文件的路径

我这里执行的命令是:

mysqldump -u xx -p pzsh>/home/pzsh/test.sql
1
然后去/home/pzsh下面看看,就会发现已经生成.sql文件了

4、使用ftp工具,把生成的.sql文件放到新服务器上去

(1)使用FTP工具下载.sql文件
(2)使用FTP工具把.sql文件上传到指定路径
(3)我这边是把.sql文件上传到新服务器的/home/pzsh目录下

5、导入到服务器

(1)进入到新服务器的mysql中

mysql -u 用户名 -p

(2)先创建数据库,按照.sql文件中的数据库名字。

create database test;

//进入到创建的数据库中
use test;
//查看当下的数据表
show tables;
//此时数据库中是没有任何表的
(3)执行source命令,导入.sql文件

source /home/pzsh/test.sql
(4)查看test数据库中的表

show tables;

此时发现我们已经把表都转移过来了。

6、如果两台服务器的数据库版本不兼容,则在root用户下执行下面的命令

mysql_upgrade -u root -p
1
输入密码即可。

end

posted @ 2019-08-02 11:13  代码堆里的看客  阅读(5823)  评论(0编辑  收藏  举报