1  首先检测当前的系统是否已经安装了MySQL

  yum list installed | grep mysql

  如果有的话,删除

2  下载rpm库资源,在网页 https://dev.mysql.com/downloads/repo/yum/ 中可以自己选择合适的版本, 然后安装

  因为本人的版本是centos 7 ,所以:

     wget  https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

    yum localinstall mysql57-community-release-el7-11.noarch.rpm

  如果不想安装最新版本的mysql,可以参考 https://translate.google.cn/#en/zh-CN/MySQL Cluster CGE    进行设置。

3  安装并启动mysql

  yum install mysql-community-server

  service  mysqld  start

4  初始的可能的mysql配置

  mysql安装后默认会生成一个随机密码,我们可以通过以下命令进行查看:

    grep password  /var/log/mysql.log

  然后使用登录mysql

    mysql -u root -p

  修改密码:

    SET PASSWORD = PASSWORD("新密码")

    由于mysql可能(默认)加载了密码验证插件,所以如果新密码过于简单可能会报错。

    解决方法:

      set  global validate_password_policy = 0;     //  这样将验证规则改为基于长度

      set global  validate_password_length = 1;   // 设置密码最短长度,本例中设置为1

    还有其他解决办法,详情请看:https://dev.mysql.com/doc/refman/5.7/en/validate-password-options-variables.html

  创建主从复制用户并授权:

    grant replication slave on *.* to mncu@hostname  identified by 'password';

    

5  关闭selinux

  setenforce 0

  vim /etc/selinux/config   将SELINUX参数设置为disabled

6  防火墙设置

  因为centos默认的防火墙是Firewall而不是iptables,所以设置一下。

    firewall-cmd –add-port=3306/tcp

    firewall-cmd –permanent –add-port=3306/tcp

    firewall-cmd –reload success

7  配置mysql配置文件。

  主:

    vim /etc/my.cnf  添加以下几行:

    log-bin=mysql-bin       #  slave会基于此log-bin来做replication
    server-id=1         #  master的标示
    innodb_flush_log_at_trx_commit=1
    sync_binlog=1

  从:

    vim /etc/my.cnf  添加该行:

    server-id=2 #slave的标示
8  配置主从:

  主:

    show  master status;

    会显示如下信息:

       File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
    +------------------+----------+--------------+------------------+-------------------+
    | mysql-bin.000001 |      329 |              |                  |

  从:

    stop slave;
    change master to master_user=’mncu’,master_password=’123456’,master_host=’192.168.1.11’,master_port=3306,master_log_file=’mysql-bin.000001’,master_log_pos=329;

    start slave;

    

centos7+mysql5.7.11实现主从复制的更多相关文章

  1. Centos7.5部署MySQL5.7基于GTID主从复制+并行复制+半同步复制+读写分离(ProxySQL) 环境- 运维笔记 (完整版)

    之前已经详细介绍了Mysql基于GTID主从复制的概念,原理和配置,下面整体记录下MySQL5.7基于GTID主从复制+并行复制+增强半同步复制+读写分离环境的实现过程,以便加深对mysql新特性GT ...

  2. Centos7.2 Systemd 方式编译 Mysql5.7.11

    导读 MySQL 5.7 版本的发布,也就是说从现在开始5.7已经可以在生产环境中使用,有任何问题官方都将立刻修复. MySQL 5.7主要特性: 原生支持Systemd 更好的性能:对于多核CPU. ...

  3. centos7上源码安装mysql5.7.11

    由于初学,安装这玩意搞了三天,其间各种报错难以解决,网上各种解答误导.最好的办法还是使用官方的英文文档,建议初学者一定要使用官方的文档,特别是下面两个页面作为初学者一定要细看: Installing ...

  4. mysql高可用架构MHA搭建(centos7+mysql5.7.28)

    无论是传统行业,还是互联网行业,数据可用性都是至关重要的,虽然现在已经步入大数据时代,nosql比较流行,但是作为数据持久化及事务性的关系型数据库依然是项目首选,比如mysql. 现在几乎所有的公司项 ...

  5. 关于Mysql5.6半同步主从复制的开启方法【转】

    介绍 先了解一下mysql的主从复制是什么回事,我们都知道,mysql主从复制是基于binlog的复制方式,而mysql默认的主从复制方式,其实是异步复制. 主库实际上并不关心从库是否把数据拉完没有, ...

  6. mysql5.7.11编译安装以及修改root密码小结

    系统是cenos6.7 64位的,默认mysql5.7.11下载到/usr/local/src,安装目录在/app/local/mysql目录下,mysql数据放置目录/app/local/data. ...

  7. mysql5.7.11安装配置

    1.下载安装包. mysql-5.7.11版本: http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.11-winx64.zip 2.拷贝到任意盘: ...

  8. Centos7 mysql-community-5.7.11编译安装

    安装环境 [root@localhost ~]# cat /etc/centos-release CentOS Linux release 7.0.1406 (Core) 0x01 准备工作 1.到m ...

  9. ubuntu14.04上安装Mysql-5.7.11

    先安装好操作系统   在Mysql官网上下载最新版的Ubuntu Linux专用的Mysql.我这里下载的是:mysql-server_5.7.11-1ubuntu14.04_amd64.deb-bu ...

随机推荐

  1. 总结:C# 委托的全面理解

    在说事件之前得先了解委托. 委托,外表看来和C/C++中函数指针没什么区别,但是本质上你才发现他其实就是个类!也就是说理解委托得从 这个两个方面去理解(单从一个方面去理解感觉就怪怪的呵呵!) 理解委托 ...

  2. redis见解

    http://blog.csdn.net/zhiguozhu/article/details/50517527Redis原生session与redis中的session区别原生session在服务器上 ...

  3. Visual Studio Package 插件开发(Visual Studio SDK)

    背景 这段时间公司新做了一个支付系统,里面有N个后台服务,每次有更新修改,拷贝打包发布包“不亦乐乎”...于是我想要不要自己定制个打包插件. 部分朋友可能会认为,有现成的可以去找一个,干嘛不用持续集成 ...

  4. Js_checkbox的互斥

    function ck_click(obj) { var ck_20 = document.getElementById("ck_20"); var ck_25 = documen ...

  5. HTML 图像实例

    61.插入图像本例演示如何在网页中显示图像.图像标签(<img>)和源属性(Src)在 HTML 中,图像由 <img> 标签定义. <img> 是空标签,意思是说 ...

  6. git 跟踪提交记录

    一.克隆git仓库 git clone ssh://hwl@xxx/home/data/repositories/git.git 二.申明使用人信息,以便跟踪提交记录 $ git config --g ...

  7. DFA化简

    首先是未化简DFA的转换表 NFA状态 DFA状态 a b {0,1,2,4,7} A B C {1,2,3,4,6,7,8} B B D {1,2,4,5,6,7} C B C {1,2,4,5,6 ...

  8. python程序出现No module named '_socket' 解决方法

    首先看一下这个错误,错误显示没有这个_socket这个模块 看一个简单的程序理解这个错误是怎么出现的 这个程序就是像浏览器发起请求发开一个链接然后关闭,一直循环,运行之后产生这个错误,产生这个错误的原 ...

  9. java保留两位小数4种方法(转载)

    喵喵最近经常遇到小数点保留的问题,转载一篇Java里面的几种小数点位数控制方法. 这是转载的原地址:https://www.cnblogs.com/chenrenshui/p/6128444.html ...

  10. C语言版本:顺序表的实现

    seqlist.h #ifndef __SEQLIST_H__ #define __SEQLIST_H__ #include<cstdio> #include<malloc.h> ...