window 7下一台cp两个mysql配置主从_MySQL
程序员文章站
2022-06-04 13:27:35
...
bitsCN.com
环境 : 个人 pc windows7 一台 ; 使用 : 官方下载: mysql-noinstall-5.5.11-win32.zip 1. 解压成2个 (文件夹) mysql_master (主) mysql_slave (从) 2. 配置文件修改 主服务器配置修改 mysql_master/my-huge.ini 修改名称为 my.ini 修改刚才 my.ini 文件的 [client] port = 3306 [mysqld] server-id = 1 port = 3306 binlog-do-db =test #同步test,此处关闭的话,就是除不允许的,其它的库均同步。 binlog-ignore-db=backup 不同步backup库,以下同上 binlog-ignore-db=mysql binlog-ignore-db=information_schema log-bin=mysql-bin 启动 mysql-5.1.36-win32_1/bin/mysqld.exe 使用 主 mysql -u root 创建同步角色 mysql>GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO backupuser@'127.0.0.1' IDENTIFIED BY '123456';; mysql>show master status; +------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000001 | 106 | test | backup | +------------------+----------+--------------+------------------+ 1 row in set (0.00 sec) 这里的file,position会在从库里用到。 从服务器配置: mysql-5.1.36-win32_2/my-huge.ini 修改名称为 my.ini 修改刚才 my.ini 文件的 [client] #password = your_password port = 3307 socket = /tmp/mysql.sock # Here follows entries for some specific programs # The MySQL server [mysqld] server-id = 2 master-host = 127.0.0.1 master-user = backup master-password = 123456 master-port = 3306 port = 3307 启动 mysql-5.1.36-win32_2/bin/mysqld.exe 我当时遇到的情况是没有成功启动,查看error日志 发现 [ERROR] d:/mysql_slave/bin/mysqld: unknown variable 'master-host=127.0.0.1' 然后把 下面四行注释掉 master-host = 127.0.0.1 master-user = backup master-password = 1234 master-port = 3307 再执行下面的命令。 slave stop; change master to master_host='127.0.0.1', master_user='backup', master_password='123456', master_log_file='mysql-bin.000001', master_log_pos=106; slave start; 可以通过 show slave status;来看看从库的情况。不过信息太多。为了方便查看可以用下面这个命令 show slave status /G; 查看上面的Slave_IO_Running: Yes 和Slave_SQL_Running: Yes 2个都为yes则证明主从同步正常,如果有任一个显示NO,则证明同步有问题。可以查看数据库日志文件,里面基本上会显示出错误之处,根据错误一步一步排查,基本上都可以解决的。 测试 在主mysql服务器 use test create table tt (ii int); 然后在从mysql服务器 use test show tables; mysql> show tables ; +----------------+ | Tables_in_test | +----------------+ | tt | +----------------+ 1 row in set (0.00 sec) 作者 wayne173 bitsCN.com
环境 : 个人 pc windows7 一台 ; 使用 : 官方下载: mysql-noinstall-5.5.11-win32.zip 1. 解压成2个 (文件夹) mysql_master (主) mysql_slave (从) 2. 配置文件修改 主服务器配置修改 mysql_master/my-huge.ini 修改名称为 my.ini 修改刚才 my.ini 文件的 [client] port = 3306 [mysqld] server-id = 1 port = 3306 binlog-do-db =test #同步test,此处关闭的话,就是除不允许的,其它的库均同步。 binlog-ignore-db=backup 不同步backup库,以下同上 binlog-ignore-db=mysql binlog-ignore-db=information_schema log-bin=mysql-bin 启动 mysql-5.1.36-win32_1/bin/mysqld.exe 使用 主 mysql -u root 创建同步角色 mysql>GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO backupuser@'127.0.0.1' IDENTIFIED BY '123456';; mysql>show master status; +------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000001 | 106 | test | backup | +------------------+----------+--------------+------------------+ 1 row in set (0.00 sec) 这里的file,position会在从库里用到。 从服务器配置: mysql-5.1.36-win32_2/my-huge.ini 修改名称为 my.ini 修改刚才 my.ini 文件的 [client] #password = your_password port = 3307 socket = /tmp/mysql.sock # Here follows entries for some specific programs # The MySQL server [mysqld] server-id = 2 master-host = 127.0.0.1 master-user = backup master-password = 123456 master-port = 3306 port = 3307 启动 mysql-5.1.36-win32_2/bin/mysqld.exe 我当时遇到的情况是没有成功启动,查看error日志 发现 [ERROR] d:/mysql_slave/bin/mysqld: unknown variable 'master-host=127.0.0.1' 然后把 下面四行注释掉 master-host = 127.0.0.1 master-user = backup master-password = 1234 master-port = 3307 再执行下面的命令。 slave stop; change master to master_host='127.0.0.1', master_user='backup', master_password='123456', master_log_file='mysql-bin.000001', master_log_pos=106; slave start; 可以通过 show slave status;来看看从库的情况。不过信息太多。为了方便查看可以用下面这个命令 show slave status /G; 查看上面的Slave_IO_Running: Yes 和Slave_SQL_Running: Yes 2个都为yes则证明主从同步正常,如果有任一个显示NO,则证明同步有问题。可以查看数据库日志文件,里面基本上会显示出错误之处,根据错误一步一步排查,基本上都可以解决的。 测试 在主mysql服务器 use test create table tt (ii int); 然后在从mysql服务器 use test show tables; mysql> show tables ; +----------------+ | Tables_in_test | +----------------+ | tt | +----------------+ 1 row in set (0.00 sec) 作者 wayne173 bitsCN.com