MYSQL数据库迁移
需求
将cms从单点192.168.201.121:3304迁移到MSYQL集群(master
192.168.201.217:3304)
存储引擎从MyISAM修改为InnoDB
步骤整理
1、F5和Nginx配置确认站点部署位置
2、确认源数据库的存储引擎,确认新引擎是否支持现有表的表结构,trigger
produce
view,为迁移做准备
3、前端停止或者rewrite
4、dump出来
5、修改存储引擎
6、导入目标mysql
7、删除原来的库
8、开启前端
9、测试
10、mnt加入
11、修改备份
一、F5和Nginx配置确认站点部署位
二、确认源数据库的存储引擎,确认新引擎是否支持现有表的表结构,trigger produce
view,为迁移做准备
jump 121
1、表的存储引擎
mysql -h 127.0.0.1 -P 3304 -u root
-ppassword cms
show table status;
全部为MyISAM
show tables
73 rows in
set (0.00 sec)
总共73表
3304-cms>select count(*) from
order_emails;
+----------+
| count(*) |
+----------+
| 219
|
+----------+
1 row in set (0.00 sec)
2、view
show table status
where comment=‘view‘;
3304-cms>show table status where
comment=‘view‘;
Empty set (0.00 sec
3、procedure
show PROCEDURE STATUS;
3304-cms>show PROCEDURE
STATUS;
Empty set (0.00 sec)
4、Trigger
SELECT * FROM
information_schema.`TRIGGERS`;
3304-cms>SELECT * FROM
information_schema.`TRIGGERS` where TRIGGER_SCHEMA=‘cms‘;
Empty set (0.02
sec)
############下面是操作#######
三、前端停止或者rewrite
四、导出到目标服务器
# jump 121
mysqldump -h 192.168.201.121 -P3304 -u dbuser
-ppassword cms > /opt/backup/cms-mmm_20140319.sql
cp
/opt/backup/cms-mmm_20140319.sql /opt/backup/cms-mmm_20140319.sql.bak
五、修改存储过程
sed -i s/MyISAM/InnoDB/ /opt/backup/cms-mmm_20140319.sql
六、导入并确认
mysql -h 127.0.0.1 -P 3304 -u root -ppassword cms <
/opt/backup/cms-mmm_20140319.sql
mysql -h 127.0.0.1 -P 3304 -u root
-ppassword cms
source /opt/backup/cms-mmm_20140319.sql
确认
show
tables
总表数量
抽取表确认
select count(*) from order_emails;
从服务器确认
192.168.201.2
jump 2
mysql -h 127.0.0.1 -P 3304 -u root
-ppassword cms -e"show tables;"
mysql -h 127.0.0.1 -P 3304 -u root -ppassword
cms -e"select count(*) from order_emails;"
192.168.201.3
jump 3
192.168.201.215
jump 215
192.168.201.216
jump 216
七、删除原来的库
jump 121
mysql -h 127.0.0.1 -P 3304 -u root -ppassword
cms
drop database cms
八、开启前端
九、测试
十、mnt加入
十一、修改备份
总结