Heim > Datenbank > MySQL-Tutorial > MySQL主库已经存在的基础上搭建从库的过程_MySQL

MySQL主库已经存在的基础上搭建从库的过程_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-01 13:30:07
Original
993 Leute haben es durchsucht

bitsCN.com

MySQL主库已经存在的基础上搭建从库的过程

 

【备注】:

主机192.168.250.20

备机192.168.250.40

 

主从复制

1 主机上面已经有了MySQL5.1.53-log版.

 

2 备机上没有mysql数据库,需要在备机上安装MySQL5.1.53-log软件,具体参考svn文档“system/mysql/document/IT_SYS_MySQL_Installation.docx”。

 

3 再次确定主服务器与从服务器的MySQL版本一致

  Showvariables like 'version';
Nach dem Login kopieren

4 在主服务器上位服务器设置一个连接账号,赋予replication slave权限。

MySQL> grant replication slave, super,reload  on *.* to 'rel'@'192.168.250.40 identified by'slavepwd1229';
Nach dem Login kopieren

5 确保主服务器上的my.cnf文件的[mysqld]部分包括一个log-bin选项。如下:

   [mysqld]   ………    log-bin=mysql-bin    server-id=1binlog-ignore-db=mysql binlog-ignore-db=information_schema
Nach dem Login kopieren

6 确保从服务器,确保在my.cnf文件中添加以下的行:

   [mysqld]log-bin=mysql-bin    server-id=2log_slave_updates = 1read_only=1 # 这个参数表示只有supserrelay-log=relay-binrelay-log-index=relay-binreplicate-ignore-db=mysqlreplicate-ignore-db=information_schemalog_bin_trust_function_creators = 1
Nach dem Login kopieren

7 主服务器重启(如果配置了master服务也可以不重启),从服务器重启

n 主服务器已经运行很长时间,binlog不是从0001开始。

8 在主服务器上查看master状态

mysql> show master status;+------------------+-----------+--------------+------------------+| File             | Position  | Binlog_Do_DB | Binlog_Ignore_DB |+------------------+-----------+--------------+------------------+| mysql-bin.000075 | 875653787 |              |                  |+------------------+-----------+--------------+------------------+1 row in set (0.00 sec)
Nach dem Login kopieren

9 启动从服务器,设置复制断点

先从250.20上面copy数据文件到250.40上面,然后chown数据权限,最后刷新表

Mysql> flush tables;
Nach dem Login kopieren

从102上面导入所有的存储过程以及存储函数:

/usr/local/mysql/bin/mysqldump -h192.168.250.20-uroot -pguNNhtqhjUnfky6ahyVh -ntd -R csf_maec > /tmp/cm20101230.sql;/usr/local/mysql/bin/mysqldump -hlocalhost-uroot -pguNNhtqhjUnfky6ahyVh -ntd -R csf > /tmp/csf20101230.sql;/usr/local/mysql/bin/mysqldump -hlocalhost-uroot -pguNNhtqhjUnfky6ahyVh -ntd -R csf_pub > /tmp/csf_pub20101230.sql;/usr/local/mysql/bin/mysqldump -hlocalhost-uroot -pguNNhtqhjUnfky6ahyVh -ntd -R reuters_interface >/tmp/reuers_inter20101230.sql;   Mysql> change master tomaster_user='rel',master_password=' slavepd1012301151' ,master_host='192.168.250.20’,master_log_file='mysql-bin.000075',master_log_pos=875653787;mysql> start slave;mysql> show slave status /G;
Nach dem Login kopieren

10 如果复制状态Slave_IO_Running,Slave_SQL_Running都为Yes,说明复制已经配置正确,如下:

     Slave_IO_Running: Yes

     Slave_SQL_Running: Yes

Ok,下面insert、delete、update、drop、truncate等等都测试成功。

意外1:

主机停机,备机正常:主机重启之后,备机仍然可以正常进行复制同步。

意外2:

主机不停机,备机停机:备机重启后,备机开启手工复制功能如下:

Mysql> start slave;
Nach dem Login kopieren

意外3:

  主机停机,备机停机:(1) 先开启slave,启动mysql,进入mysqlMysql> stop slave;Mysql> show slave status /G;记下最后一个pos与binlog值为mysql-bin.000079、875653787(2) 重新指定master目标:Mysql> change master tomaster_user='rel',master_password=' slavepd1012301151' ,master_host='192.168.250.20,master_log_file='mysql-bin.000079',master_log_pos=875653787;(3) 启动master(4) 进入slave,启动复制功能。执行start slave;Mysql> start slave;
Nach dem Login kopieren

 

 

bitsCN.com
Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage