设为首页 收藏本站
查看: 1159|回复: 0

[经验分享] MySQL集群搭建--多主模式

[复制链接]

尚未签到

发表于 2018-10-5 07:40:12 | 显示全部楼层 |阅读模式
MySQL集群搭建--多主模式
  本文使用的是Galera搭建的MYSQL集群,实现的是每个MYSQL都是主服务器,不存在主从之分。
  环境:
  三台mysql5.7服务器。
安装mysql集群:
  安装前准备:
  # echo ‘192.168.1.2 mysql1’ >>/etc/hosts
  # echo ‘192.168.1.4 mysql2’>>/etc/hosts
  # echo ‘192.168.1.7 mysql3’ >>/etc/hosts
  # echo 'net.ipv4.tcp_tw_recycle = 1' >>/etc/sysctl.conf
  # echo 'net.ipv4.tcp_tw_recycle = 1' >>/etc/sysctl.conf
  # sysctl -p
  常规安装mysql5.7步骤(集群不可以使用这个方法):
  先从官网下载一个mysql5.7的捆绑包,然后解压。
  # tar -xvf mysql-5.7.22-1.el6.x86_64.rpm-bundle.tar
  # yum -y install mysql-community-common-5.7.22-1.el6.x86_64.rpm
  # yum -y install mysql-community-libs-5.7.22-1.el6.x86_64.rpm
  # yum -y install mysql-community-client-5.7.22-1.el6.x86_64.rpm
  # yum -y install mysql-community-server-5.7.22-1.el6.x86_64.rpm
  启动服务:
  # service mysqld start
  Mysql5.7版本默认会自动为‘root@localhost’生成一个临时密码,这个密码存在mysql的错误日志文件中(/var/log/mysqld.log)。取出密码:
  # grep 'temporary password' /var/log/mysqld.log
  2018-05-02T14:08:24.018468Z 1 [Note] A temporary password is generated for root@localhost: gqS*Tpo-8I)K
  参考官网:https://dev.mysql.com/doc/refman/8.0/en/linux-installation-rpm.html
  登录并修改密码:
  # mysql -uroot -p

  Mysql >>  Mysql集群安装:
  下载mysql补丁包(http://releases.galeracluster.com/mysql-wsrep-5.7.21-25.14/centos/6/x86_64/)。
  下载Galera安装包
  (http://releases.galeracluster.com/galera-3/centos/6/x86_64/)
  查看之前是否有mysql存在,如果存在卸载即可。
  # rpm -qa|grep mysql
  # yum remove mysql-libs*
  安装mysql补丁包:
  # yum install mysql-wsrep-common-5.7-5.7.21-25.14.el6.x86_64.rpm
  # yum install mysql-wsrep-devel-5.7-5.7.21-25.14.el6.x86_64.rpm
  # yum install mysql-wsrep-libs-compat-5.7-5.7.21-25.14.el6.x86_64.rpm
  # yum install mysql-wsrep-libs-5.7-5.7.21-25.14.el6.x86_64.rpm
  # yum install mysql-wsrep-client-5.7-5.7.21-25.14.el6.x86_64.rpm
  # yum install mysql-wsrep-server-5.7-5.7.21-25.14.el6.x86_64.rpm
  # yum install galera-3-25.3.23-2.el6.x86_64.rpm
  启动mysql
  # service mysqld start
  # ps -ef|grep mysql
  查询mysql的初始密码:
  # cat /var/log/mysqld.log|grep ‘temporary password’
  修改密码:
  # mysql -uroot -p

  Mysql>>
  Mysql>grant all PRIVILEGES on *.* to myroot@'%'>  Mysql> FLUSH PRIVILEGES;
  # service mysqld stop
  配置/etc/my.cnf
  [mysqld]
  datadir=/var/lib/mysql
  socket=/var/lib/mysql/mysql.sock
  user=mysql
  binlog_format=ROW
  bind-address=0.0.0.0
  default_storage_engine=innodb
  innodb_autoinc_lock_mode=2
  innodb_flush_log_at_trx_commit=0
  wsrep_cluster_name=MyCLuster #你的cluster名,每台机器上的要相同
  wsrep_provider=/usr/lib64/galera-3/libgalera_smm.so #不同版本这个路径可能不同,需要自行确定  安装galera后会生成这个lib文件
  wsrep_cluster_address="gcomm://" #第一台机器需要这样配置
  #wsrep_cluster_address="gcomm://192.168.1.2,192.168.1.4,192.168.1.7" #其他集群机器需要配置同步源路径
  wsrep_node_name=node1  #当前机器的节点名
  wsrep_node_address=192.168.1.12 #当前机器ip
  wsrep_sst_method=rsync #同步方式
  wsrep_sst_auth=myroot:2wsx@WSX
  [mysql_safe]
  log-error=/var/log/mysqld.log
  pid-file=/var/run/mysqld/mysqld.pid
  启动第一台机器:
  # service mysqld start --wsrep-new-cluster
  其中--wsrep-new-cluster只要在初始化集群的时候才能用,后面服务重启都不要用,这时候可以查看集群状态了:
  # mysql -uroot -p
  mysql>  "show status like 'wsrep_%'"
  | wsrep_incoming_addresses     | 192.168.1.2:3306 |
  | wsrep_cluster_size           | 3                   |
  启动其他节点:
  # service mysqld start
  再次查看集群信息:
  # mysql -uroot -p -e  "show status like 'wsrep_%'"
  这样整个集群就好了,测试在任意节点上建一个库,在其他节点上查看,能正常同步到其他节点。
  参考链接(http://galeracluster.com/documentation-webpages/startingcluster.html)


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-612422-1-1.html 上篇帖子: MySQL脚本安装及配置 下篇帖子: linux 环境下安装mysql----ubuntu
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表