一、應用場景
由於要把測試服務器上的數據庫遷移到正式服務器上,因此需要做數據庫的遷移。這里記錄一下。
二、數據庫遷移
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