59519751 发表于 2018-10-4 12:25:14

MySQL主从配置总结

  mysql主从配置总结
  1.# cat /etc/redhat-release//版本centos6.4

  CentOS>  2.# virsh
  Welcome to virsh, the virtualization interactive terminal.
  Type:'help' for help with commands
  'quit' to quit
  3.virsh # list
  Id    Name                           State
  ----------------------------------------------------
  1   windows2003_64               running
  2   winxp                        running
  4   CactiEZ                        running
  11    SN01                           running //KVM虚拟机SN01为centos6.4操作系统作为主mysql IP:192.168.200.77
  13    SN02                           running //KVM虚拟机SN01为centos6.4操作系统作为从mysql IP: 192.168.200.78
  4.virsh # console 11 //进入主mysql服务器
  5.# rpm -q mysql-server //mysql版本为5.1.73版本
  mysql-server-5.1.73-3.el6_5.x86_64
  6.# cat /etc/my.cnf //添加server-id和log-bin=mysql-bin
  
  datadir=/var/lib/mysql
  socket=/var/lib/mysql/mysql.sock
  user=mysql
  server-id=77 //添加server-id不能重复这个为ip最后一位作为id
  log-bin=mysql-bin //启动bin日志
  7.# mysql -uroot -p123456 //进入mysql数据库
  Welcome to the MySQL monitor.Commands end with ; or \g.

  Your MySQL connection>  Server version: 5.1.73-log Source distribution
  Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
  Oracle is a registered trademark of Oracle Corporation and/or its
  affiliates. Other names may be trademarks of their respective
  owners.
  Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

  8.mysql>grant replication slave on *.* to 'replication'@'192.168.200.%'>  客户端IP代替,如192.168.200.78,加强安全。
  Query OK, 0 rows affected (0.00 sec)
  9.mysql> show master status; //查看主mysql的状态记住file和position
  +------------------+----------+--------------+------------------+
  | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
  +------------------+----------+--------------+------------------+
  | mysql-bin.000001 |      187 |            |                  |
  +------------------+----------+--------------+------------------+
  1 row in set (0.00 sec)
  执行完此步骤后不要再操作主服务器MYSQL,防止主服务器状态值变化
  10.按ctrl+]返回kvm
  11.virsh # list
  Id    Name                           State
  ----------------------------------------------------
  1   windows2003_64               running
  2   winxp                        running
  4   CactiEZ                        running
  11    SN01                           running
  13    SN02                           running
  12.virsh # console 13 //进入SN02从mysql服务器
  Connected to domain SN02
  Escape character is ^]
  13.# mysql -uroot -p123456 //进入从mysql数据库服务器
  Welcome to the MySQL monitor.Commands end with ; or \g.

  Your MySQL connection>  Server version: 5.1.73-log Source distribution
  Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
  Oracle is a registered trademark of Oracle Corporation and/or its
  affiliates. Other names may be trademarks of their respective
  owners.
  Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  14.mysql> change master to master_host='192.168.200.77',master_user='replication',master_password='123456',
  master_log_file='mysql-bin.000001',master_log_pos=187;//注意不要断开,“187”无单引号。
  15.mysql> start slave; //启动服务器复制功能
  Query OK, 0 rows affected, 1 warning (0.00 sec)
  16.mysql> show slave status\G;
  *************************** 1. row ***************************
  Slave_IO_State: Waiting for master to send event
  Master_Host: 192.168.200.77 //主服务器地址
  Master_User: replication //授权帐户名,尽量避免使用root
  Master_Port: 3306 //数据库端口,部分版本没有此行
  Connect_Retry: 60
  Master_Log_File: mysql-bin.000001
  Read_Master_Log_Pos: 187 //#同步读取二进制日志的位置,大于等于>=Exec_Master_Log_Pos

  >
  >
  >  Slave_IO_Running: Yes//此状态必须YES
  Slave_SQL_Running: Yes //此状态必须YES
  Replicate_Do_DB:
  Replicate_Ignore_DB:
  Replicate_Do_Table:
  Replicate_Ignore_Table:
  Replicate_Wild_Do_Table:
  Replicate_Wild_Ignore_Table:
  Last_Errno: 0
  Last_Error:
  Skip_Counter: 0
  Exec_Master_Log_Pos: 187

  >  Until_Condition: None
  Until_Log_File:
  Until_Log_Pos: 0
  Master_SSL_Allowed: No
  Master_SSL_CA_File:
  Master_SSL_CA_Path:
  Master_SSL_Cert:
  Master_SSL_Cipher:
  Master_SSL_Key:
  Seconds_Behind_Master: 0
  Master_SSL_Verify_Server_Cert: No
  Last_IO_Errno: 0
  Last_IO_Error:
  Last_SQL_Errno: 0
  Last_SQL_Error:
  1 row in set (0.00 sec)
  ERROR:
  No query specified
  注:Slave_IO及Slave_SQL进程必须正常运行,即YES状态,否则都是错误的状态(如:其中一个NO均属错误)。
  以上操作过程,主从服务器配置完成。
  测试
  17.mysql> show databases; //查看所有数据库
  +--------------------+
  | Database         |
  +--------------------+
  | information_schema |
  | mysql            |
  | test               |
  |            |
  +--------------------+
  3 rows in set (0.00 sec)
  18.mysql>create database zhh; //创建数据库zhh
  19.mysql> use zhh;//进入zhh数据库
  Database changed
  20.mysql> create table zhh(id int(3),name char(10));//创建zhh表
  Query OK, 0 rows affected (0.06 sec)
  21.mysql> insert into zhh value(01,'zh888.blog');//插入01和zh888.blog值
  Query OK, 1 row affected, 1 warning (0.00 sec)
  22.mysql> select *from zhh;//查询zhh表的内容
  +------+------------+

  |>  +------+------------+
  |    1 | zh888.blog |
  +------+------------+
  1 row in set (0.00 sec)
  23.ctrl+]切换到kvm
  24.virsh # list
  Id    Name                           State
  ----------------------------------------------------
  1   windows2003_64               running
  2   winxp                        running
  4   CactiEZ                        running
  11    SN01                           running
  13    SN02                           running
  25.virsh # console 13 //连接sn02从mysql服务器
  Connected to domain SN02
  Escape character is ^]
  26.# mysql -uroot -p123456 //进入从mysql数据库
  Welcome to the MySQL monitor.Commands end with ; or \g.

  Your MySQL connection>  Server version: 5.1.73-log Source distribution
  Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
  Oracle is a registered trademark of Oracle Corporation and/or its
  affiliates. Other names may be trademarks of their respective
  owners.
  Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  27.mysql> show databases;//查看所有mysql数据库
  +--------------------+
  | Database         |
  +--------------------+
  | information_schema |
  | mysql            |
  | test               |
  | zhh                |
  |         |
  +--------------------+
  4 rows in set (0.01 sec)
  28.mysql> use zhh;//进入zhh数据库
  Database changed
  mysql> select *from zhh;//查询zhh表的内容
  +------+------------+

  |>  +------+------------+
  |    1 | zh888.blog |
  +------+------------+
  1 row in set (0.00 sec)
  大功告成!

页: [1]
查看完整版本: MySQL主从配置总结