加入收藏 | 设为首页 | 会员中心 | 我要投稿 好传媒网 (https://www.haochuanmei.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql 集群配置是怎样的

发布时间:2022-01-12 13:29:07 所属栏目:MySql教程 来源:互联网
导读:今天就跟大家聊聊有关mysql 集群配置是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 mysql 复制 主节点ip:192.168.56.2 从节点ip:192.168.56.3 1 双节点添加同步账户并关闭数据库:
        今天就跟大家聊聊有关mysql 集群配置是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
 
mysql 复制
主节点ip:192.168.56.2
从节点ip:192.168.56.3
 
 
1 双节点添加同步账户并关闭数据库:
节点 1
注意ip指定为从节点ip
[root@mysql1 home]# mysql -uroot -poracle
mysql> GRANT REPLICATION SLAVE ON *.* to 'syc'@'192.168.56.3' identified by 'syc';
Query OK, 0 rows affected (0.03 sec)
 mysql 集群配置是怎样的
 
mysql> flush privileges;
Query OK, 0 rows affected (0.33 sec)
mysql> exit
Bye
[root@mysql1 home]# /etc/init.d/mysql stop
Shutting down MySQL..[确定]
 
 
节点2
注意其中ip指定主节点ip
[root@mysql2 home]# mysql -uroot -poracle
mysql> GRANT REPLICATION SLAVE ON *.* to 'syc'@'192.168.56.2' identified by 'syc';
Query OK, 0 rows affected (0.03 sec)
 
 
mysql> flush privileges;
Query OK, 0 rows affected (0.33 sec)
mysql> exit
Bye
[root@mysql2 home]# /etc/init.d/mysql stop
Shutting down MySQL..[确定]
2 修改my.cnf文件
节点1 my.cnf文件
[root@mysql1 home]# vi /etc/my.cnf         
[client]
#客户端字符集
default-character-set=utf8
socket = /home/mysql/mysql.sock
[mysqld]
socket = /home/mysql/mysql.sock
server-id=1
#开启binlog
log-bin=mysql-bin
# 这个参数用来配置从服务器的更新是否写入二进制日志,这个选项默认是不打开的,但是,如果这个从服务器B是服务器A的从服务器,
# 同时还作为服务器C的主服务器,那么就需要开发这个选项,这样它的从服务器C才能获得它的二进制日志进行同步操作
log-slave-updates
# 在复制过程中,由于各种的原因,从服务器可能会遇到执行BINLOG中的SQL出错的情况,在默认情况下,服务器会停止复制进程,不再进行同步,等到用户自行来处理。
slave-skip-errors=all
# 这个参数是对于MySQL系统来说是至关重要的,他不仅影响到Binlog对MySQL所带来的性能损耗,而且还影响到MySQL中数据的完整性
sync_binlog=1
# 应设为整个结构中服务器的总数
auto-increment-increment = 2
# 设定数据库中自动增长的起点,避免两台服务器数据同步时出现主键冲突
auto-increment-offset = 1
#字符集
character-set-server=utf8
#不区分大小写
lower_case_table_names=1
[mysql]
#字符集
default-character-set=utf8
auto-rehash
 
 
节点2 my.cnf文件
[root@mysql2 home]# vi /etc/my.cnf
[client]
socket = /home/mysql/mysql.sock
#客户端字符集
default-character-set=utf8
[mysqld]
server-id=2
socket = /home/mysql/mysql.sock
#字符集
character-set-server=utf8
#不区分大小写
lower_case_table_names=1
#开启binlog
log-bin=mysql-bin
# 这个参数用来配置从服务器的更新是否写入二进制日志,这个选项默认是不打开的,但是,如果这个从服务器B是服务器A的从服务器,
# 同时还作为服务器C的主服务器,那么就需要开发这个选项,这样它的从服务器C才能获得它的二进制日志进行同步操作
log-slave-updates
#在复制过程中,由于各种的原因,从服务器可能会遇到执行BINLOG中的SQL出错的情况,在默认情况下,服务器会停止复制进程,不再进行同步,等到用户自行来处理。
slave-skip-errors=all
#这个参数是对于MySQL系统来说是至关重要的,他不仅影响到Binlog对MySQL所带来的性能损耗,而且还影响到MySQL中数据的完整性
sync_binlog=1
# 应设为整个结构中服务器的总数
auto-increment-increment = 2
# 设定数据库中自动增长的起点,避免两台服务器数据同步时出现主键冲突
auto-increment-offset = 1
[mysql]
#字符集
default-character-set=utf8
auto-rehash
 
 
3 启动mysql数据库
节点1
[root@mysql1 home]# /etc/init.d/mysql start
Starting MySQL..[确定]
节点2
[root@mysql2 home]# /etc/init.d/mysql start
Starting MySQL.[确定]
 
 
记录binlog位置
节点1
mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000003 |      120 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
 
 
节点2
mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000002 |      120 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
 
 
4 启动复制
主节点
mysql> stop slave;
mysql> change master to master_host='192.168.56.3',master_user='syc',master_password='syc',master_port=3306,master_log_file='mysql-bin.000002',master_log_pos=120;
mysql> start slave;
mysql> show slave statusG
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.56.2
                  Master_User: syc
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000003
          Read_Master_Log_Pos: 927
               Relay_Log_File: mysql2-relay-bin.000002
                Relay_Log_Pos: 793
        Relay_Master_Log_File: mysql-bin.000003
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
            
从节点
mysql> stop slave;
mysql> change master to master_host='192.168.56.2',master_user='syc',master_password='syc',master_port=3306,master_log_file='mysql-bin.000003',master_log_pos=120;
mysql> start slave;
mysql> show slave statusG
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.56.3
                  Master_User: syc
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000002
          Read_Master_Log_Pos: 927
               Relay_Log_File: mysql1-relay-bin.000002
                Relay_Log_Pos: 580
        Relay_Master_Log_File: mysql-bin.000002
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
 
 
测试:
主节点
mysql> create database bbbbb;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| aaaaa              |
| bbbbb              |
| mysql              |
| performance_schema |
| test               |
+--------------------+
6 rows in set (0.00 sec)
从节点:
mysql> create database aaaaa;
Query OK, 1 row affected (0.01 sec)
 
 
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| aaaaa              |
| bbbbb              |
| mysql              |
| performance_schema |
| test               |
+--------------------+
6 rows in set (0.00 sec)
 
 
测试完成:
注意:
show slave statusG
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
这两项必须是yes
 
 
如果出现以下问题:
             Slave_IO_Running: Connecting
            Slave_SQL_Running: Yes
需要查看是否创建用户权限时出现问题或链接信息错误或账号失效。
 
看完上述内容,你们对mysql 集群配置是怎样的有进一步的了解吗?

(编辑:好传媒网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读