mysql主从

  1. 安装

    #添加mysql系统用户
    groupadd mysql
    useradd -r -g mysql mysql
    tar -xvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
    cd /usr/local/
    mv mysql-5.7.22-linux-glibc2.12-x86_64/ mysql-5.7.22
    
  2. 编辑配置文件

    cd /usr/local/mysql-5.7.22/
    vim /etc/my.cnf
    [mysqld]
    socket=/tmp/mysql.sock
    # 设置mysql的安装目录
    basedir=/usr/local/mysql-5.7.22
    # 设置mysql数据库的数据的存放目录 
    datadir=/usr/local/mysql-5.7.22/data
    # 允许最大连接数
    max_connections=5000
    # 服务端使用的字符集默认为8比特编码的latin1字符集
    character-set-server=utf8mb4
    collation-server=utf8mb4_unicode_ci
    init_connect='SET collation_connection = utf8mb4_unicode_ci'
    lower_case_table_names=1
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    #max_allowed_packet=256M
    default-authentication-plugin=mysql_native_password
    symbolic-links=0
    default-time-zone='+08:00'
    [mysqld_safe]
    log-error=/var/log/mysql-5.7.22/mysql.log
    pid-file=/var/run/mysql-5.7.22/mysql.pid
    !includedir /etc/my.cnf.d
    
  3. 创建对应文件目录

    mkdir /usr/local/mysql-5.7.22/data
    mkdir /var/log/mysql-5.7.22
    mkdir /var/run/mysql-5.7.22
    touch /var/log/mysql-5.7.22/mysql.log
    chown -R mysql:mysql /usr/local/mysql-5.7.22/data/
    chown -R mysql:mysql /var/log/mysql-5.7.22/
    chown -R mysql:mysql /var/run/mysql-5.7.22/
    
  4. 初始化

    ./bin/mysqld --initialize --user=mysql --lower-case-table-names=1  					--basedir=/usr/local/mysql-5.7.22/ --datadir=/usr/local/mysql-5.7.22/data/
    
  5. 启动

    #加入linux服务
    cp support-files/mysql.server /etc/init.d/mysqld
    chkconfig add mysqld
    service mysqld start
    
    或者
    vim /etc/systemd/system/mysqld.service
    [Unit]
    Description=MySQL Server
    Documentation=man:mysqld(8)
    Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
    After=network.target
    After=syslog.target
    [Install]
    WantedBy=multi-user.target
    [Service]
    User=mysql
    Group=mysql
    ExecStart=/data/mysql-5.7.22/bin/mysqld --defaults-file=/etc/my.cnf
    LimitNOFILE = 5000
    
    
    systemctl daemon-reload
    systemctl  start mysqld
    systemctl  enable mysqld
    
  6. 添加mysql命令

    vim /root/.bash_profile
    PATH=$PATH:$HOME/bin:/usr/local/mysql-5.7.22/bin
    source  /root/.bash_profile
    ln -s /var/lib/mysql/mysql.sock /tmp/
    
  7. 初始化密码

    mysql -uroot -p'O)PiBLw0=af#'
    alter user root@'localhost' identified by 'mtxx87668438QAZ123!@#';
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123qqq...A' 				WITH GRANT OPTION;
    

一主一从

  1. 修改配置文件

    vim /etc/my.cnf
    server-id=15
    #启用半同步复制
    plugin-load="rpl_semi_sync_master=semisync_master.so;rpl_semi_sync_slave=semisync_slave.so"
    rpl-semi-sync-master-enabled = 1
    rpl-semi-sync-slave-enabled = 1
    #开启 Binlog 并写明存放日志的位置
    log_bin=/usr/local/mysql-5.7.22/binlog/master1
    #日志保留时间
    expire_logs_days=10
    #日志模式为混合模式
    binlog_format=MIXED
    
    
    mkdir -p /usr/local/mysql-5.7.22/binlog
    chown -R mysql:mysql  /usr/local/mysql-5.7.22/binlog
    service mysqld restart
    
  2. 创建:同步数据连接用户、管理主机连接数据库的用户

    grant replication slave on *.* to repluser@'%' identified by '123qqq...A';
    flush privileges;
    
  3. 查看日志信息:

    show master status; 
    

  1. 修改配置文件

    vim /etc/my.cnf
    server-id=16
    #启用半同步复制
    plugin-load="rpl_semi_sync_master=semisync_master.so;rpl_semi_sync_slave=semisync_slave.so"
    rpl-semi-sync-master-enabled = 1
    rpl-semi-sync-slave-enabled = 1
    #开启 Binlog 并写明存放日志的位置
    log_bin=/usr/local/mysql-5.7.22/binlog/master1
    #日志保留时间
    expire_logs_days=10
    #日志模式为混合模式
    binlog_format=MIXED
    
    
    
    mkdir -p /usr/local/mysql-5.7.22/binlog
    chown -R mysql:mysql /usr/local/mysql-5.7.22/binlog
    service mysqld restart
    
  2. 创建:同步数据连接用户、管理主机连接数据库的用户

    grant replication slave on *.* to repluser@'%' identified by '123qqq...A';
    flush privileges;
    
  3. 指定主服务器信息:

    change master to
    master_host="10.129.18.160",
    master_user="repluser",
    master_password="mtxx87668438QAZ123!@#",
    master_log_file="mysql-bin.000269",
    master_log_pos=717710130;
    
  4. 启动slave进程:

    start slave;
    
  5. 查看:

    show slave status\G
    

喜欢的亲可以关注点赞评论哦!以后每天都会更新的哦!本文为小编原创文章; 文章中用到的文件、安装包等可以加小编联系方式获得;
欢迎来交流小编联系方式VX:CXKLittleBrother 进入运维交流群

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

含义小哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值