DB迁移

旧DB:
# ps -ef |grep mysql
root      5164     1  0  2016 ?        00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe –socket=/data/mysql/mysql_3306/mysql.sock –port=3306 –pid-file=/data/mysql/mysql_3306/3306.pid –datadir=/data/mysql/mysql_3306/data –tmpdir=/data/mysql/mysql_3306/tmp –server-id=1953306 –log_slave_updates –replicate-do-db=fwms –innodb_data_home_dir=/data/mysql/mysql_3306/data –innodb_log_group_home_dir=/data/mysql/mysql_3306/data
mysql     6161  5164  0  2016 ?        21:04:54 /usr/local/mysql/bin/mysqld –basedir=/usr/local/mysql –datadir=/data/mysql/mysql_3306/data –plugin-dir=/usr/local/mysql/lib/plugin –user=mysql –tmpdir=/data/mysql/mysql_3306/tmp –server-id=1953306 –log-slave-updates –replicate-do-db=fwms –innodb-data-home-dir=/data/mysql/mysql_3306/data –innodb-log-group-home-dir=/data/mysql/mysql_3306/data –log-error=/data/mysql/mysql_3306/data/../logs/error.log –open-files-limit=81920 –pid-file=/data/mysql/mysql_3306/3306.pid –socket=/data/mysql/mysql_3306/mysql.sock –port=3306
# mysql -uroot -p -S /data/mysql/mysql_3307/mysql.sock

新DB(已经运行着3306端口的实例):
# mkdir /data/mysql/mysql_3307
# mkdir /data/mysql/mysql_3307/{logs,data,tmp}
# chown -R mysql.mysql /data/mysql/mysql_3307
# cd /usr/local/mysql/scripts
# ./mysql_install_db –defaults-file=/data/mysql/mysql_3307/my.cnf –user=mysql –basedir=/usr/local/mysql –datadir=/data/mysql/mysql_3307/data
# cd ../bin
# ./mysqld_safe –defaults-file=/data/mysql/mysql_3307/my.cnf –user=mysql –basedir=/usr/local/mysql –datadir=/data/mysql/mysql_3307/data &

# mysql -uroot -p -S /data/mysql/mysql_3307/mysql.sock
(密码为空)
# ./mysqld_safe –defaults-file=/data/mysql/mysql_3307/my.cnf &
# mysqladmin -uroot -p -S /data/mysql/mysql_3307/mysql.sock shutdown

因为新DB版本高一些,另外数据库比较大,步骤大致是:
1.停止旧数据库3306实例 2.cp 数据库数据目录到新DB上
3.新db上,upgrade 表,检查启动是否报错 4.检查数据是否一致

# ./mysql_upgrade -uroot -p -S /data/mysql/mysql_3307/mysql.sock

经过一系列的检查后成功… …

Print Friendly

发表评论

电子邮件地址不会被公开。 必填项已用*标注