A: mysql> Grant replication slave on *.* to backup@'10.16.0.233' identified by '1234'; *结尾分号要打代表确认
B: mysql> Grant replication slave on *.* to backup@'10.16.0.231' identified by '1234';
注: (1). mysql> Grant 权限 on *.* to 用户账号@'允许访问的IP' identified by '用户密码';
(2). 4.0.2以前的版本, 因为不支持replication slave, 要改为 file,例如下面的语句:
mysql> Grant file on *.* to backup@'10.16.0.233' identified by '1234';
4.在B服务器上用如下命令测试backup用户能连上A服务器
c:>mysql -ubackup -p1230 -h10.16.0.231
5.停掉A和B服务器上的mysql服务。
6.A 服务器为 master: server-id=1
log-bin=backuplog #设置需要记录log 可以设置log-bin=backuplog 设置日志文件的名称,
#日志文件在mysql数据库文件夹根目录下,mysql将建立不同扩展名,文件名为backuplog的几个日志文件。
binlog-do-db=dotproject #指定需要日志的数据库
重起数据库服务。
B 服务器为 slave:
server-id=2
master-host=10.16.0.231
master-user=backup #同步用户帐号
master-password=1230
master-port=3306 #默认端口
master-connect-retry=60 #预设重试间隔60秒
replicate-do-db=dotproject #告诉slave只做dotproject数据库的更新
#在mysql数据库文件夹根目录下,会自动生成一个master.info的日志文件,
#获取master服务器数据库的更新信息。
注:由于设置了slave的配置信息,mysql在数据库目录下生成master.info。所以如有要修改相关slave的配置要先删除该文件。否则修改的配置不能生效。
7.启动A服务器mysql服务。
8.输入show master status; #查看主服务器的状态
+---------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+-----------------+----------+--------------+------------------+
| backuplog.000003 | 16443 | dotproject | manual,mysql |
+-----------------+----------+--------------+------------------+
记录File 和 Position 项目的值backuplog.000003和16443。
8.在B服务器上,停止slave的服务
slave stop;
9.在从机上设置主服务器的参数 *每句后面逗号要添加