欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-07-13 08:46:19
...

一、应用场景

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

二、数据库迁移

1、新建数据库test

create database test;

2、进入数据库,创建数据表test

create table test1(id int(10) primary key, name varchar(30), age int(10));

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

然后去/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

输入密码即可。

end