全部博文(56)
分类: LINUX
2009-11-04 14:57:06
a) 为安全起见在进行如下操作时建议不要对cnoss进行任何修改、下发等操作;
b) 请务必保证配置步骤3正确备份了数据库;
c) 配置步骤7中的配置项务必添加在[mysqld]下面;
本方案主要针对电总cdn系统的emm数据库相对独立运行,数据没有实时同步而造成的当emm组件切换后相应配置丢失等问题而编写;通过以下配置使两个独立数据库实现数据的实时同步;
本次配置升级涉及到所有组件的emm数据库,在操作过程不能对cnoss进行任何修改,下发等可能修改配置的操作;
1) 确认两台emm的主备情况;
如emm01为主暂且将emm01用master表示,emm02用slave表示
2) 分别为master和slave两台数据库添加同步用户;
分别在master和slave上执行如下命令:
#mysql
Mysql> GRANT ALL PRIVILEGES ON *.* TO 'onewave'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;
Mysql> GRANT ALL PRIVILEGES ON *.* TO 'onewave'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
注:onewave和123456分别同步数据库的用户名和密码
3) 备份master的数据库;
#mysqldump -uonewave -p test > /home/test.sql
注:test为emm的数据库名称,请务必保证本次备份成功;
4) 清空slave服务器上的test数据库表,然后将master数据的备份文件test.sql导入slave的test数据库;
#mysql -uonewave -p test < /home/test.sql
5) 分别记录master和slave的File和Position,操作如下:
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| pss-1-bin.000001 | 79 | test | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
(master)
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| pss-2-bin.000002 | 180 | test | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
(slave)
6) 然后分别在master和slave上执行如下操作:
Master:
#mysql
Mysql> CHANGE MASTER TO
-> MASTER_HOST='61.178.42.90',MASTER_USER='onewave',MASTER_PASSWORD='123456', MASTER_LOG_FILE='pss-2-bin.000002',MASTER_LOG_POS=180;
注:61.178.42.90为salve的ip;onewave和123456为步骤2创建的同步数据库的用户和密码;pss-2-bin.000002为步骤5中slave对应file;180为步骤5中slave对应的Position;
Slave:
#mysql
Mysql> CHANGE MASTER TO
-> MASTER_HOST='61.178.42.91',MASTER_USER='onewave',MASTER_PASSWORD='123456', MASTER_LOG_FILE='pss-1-bin.000001',MASTER_LOG_POS=79;
注:61.178.42.91为master的ip;onewave和123456为步骤2创建的同步数据库的用户和密码;pss-1-bin.000001为步骤5中master对应file;79为步骤5中master对应的Position;
7) 停掉两台emm的数据库后修改配置文件/etc/my.cnf (service mysqld stop)
在[mysqld]选项的后边添加如下配置
server-id=1
log-bin
binlog-do-db=test
master-host=61.178.42.91
master-user=onewave
master-password=123456
master-port=3306
master-connect-retry=60
replicate-do-db=test
红色部分要根据实际情况修改:
test为要同步的数据库;
master-host为对方ip
master-user和master-password为步骤2创建的同步用户和密码
注:以上配置必须加在[mysqld]选项下
8) 确认修改无误后重新启动mysqld(service mysqld start);
9)
分别通过master和slave进行insert into或delete或update操作,随后查询另一台数据库看有没有做相应的insert into或delete或update操作;有则说明配置成功;