没有配置的情况下,就是复制服务器。(参见 vi /etc/my.cnf 第61行。) 就是说,只

需要配置其中一台作为“复制从服务器”,就是一组主从复制。


=============


主服务    z

从服务    c

z&c# ./configure --prefix=/usr/local/mysql --localstatedir=/dell/mysql_db

z&c# make && make install

z&c# ls /support-files

z&c# cp support-files/my-large.cnf /etc/my.cnf

z&c# cp support-files/mysql.server /etc/init.d/mysql

z&c# chmod 755 /etc/init.d/mysql

z&c# chown -R mysql.mysql /usr/local/mysql

z&c# /usr/local/mysql/bin/mysql_install_db -user=mysql

z&c# chown -R mysql.mysq /dell/mysql_db

z&c# chown -R root.mysql /usr/local/mysql

z&c# vi /etc/my.cnf

z&c# /etc/init.d/mysql start

z&c# /usr/local/mysql/bin/mysql


z# mysql            (这个样子是没有密码的,……;实际不可这样)

授权(创建用户以备复制)

> grant replication slave on *.* to 's1'@'192.168.0.100' identified by 'newpwd';

> show master status;

mysql主从复制_dell

z# ps aux | grep mysql


c# mysql

> change master to

master_host='192.168.0.180',

master_user='s1',

master_password='newpwd',

master_log_file='mysql-bin.000003',

master_log_pos=258;

> start slave;

> show slave status \G

mysql主从复制_local_02

                   上边必须是两个“yes”。防火墙可能让上边的不是yes,下边是。

                   如果是两个“no”,有可能是少了一步“start slave;”。


c# ps aux | grep mysql

c# ls /dell/mysql_db/*.info


------------已经处于生产环境的机器配置复制时,需要先锁定库------------


z# mysql

mysql> flush tables with read lock;

mysql> show master status;

               终端不能退出,退出则锁定失效。

c# tar -jcf mysql.t mysql    (注意备份需要的库)

c# scp mysql.t 192.168.0.100:/dell/mysql_db


在客户端完成安装后,解压。

执行虚线上边的操作,直到测试前,执行下边的语句。

mysql> unlock tables;


可以测试效果了。


=============


查看配置文件(可以设置过滤,建议在从机器设置)

z# vi /etc/my.cnf

[mysqld]

server-id = 1

           全局唯一

log-bin = mysql-bin

           开启二进制日志功能;复制基础

binlog-do-db = runndy-web

           复制的库;可以设置多个

binlog-ignore-db = mysql

           跳过的库;可以设置多个

           建议忽略这个库,因为版本之间可能存在差异;建议“从”版本“高”于主版本。


c# vi /etc/my.cnf

[mysqld]

server-id = 2

log-bin = mysql-bin

binlog-do-db = runndy-web

binlog-ignore-db = mysql



mysql主从复制_rsync_03