mysql 主从远程复制_mysql主从复制

mysql主从复制

1.centos7如何安装mysql

1.yum安装

2.源代码编译安装

3.rpm包安装

yum安装的前提条件,是准备yum源,可以选择清华园,阿里源,等等

1.安装mariadb的yum源有两,一个是阿里云,版本低,功能小

命令:yum install mariadb-server mariadb

2.mariadb官方的yum源,配置的方式

方法:在/etc/yum.repos.d/目录下创建repo文件就是yum仓库

1.创建一个mariadb.repo文件,写入如下内容

vim /etc/yum.repos.d/MariaDB.repo

2、添加repo仓库配置

[mariadb]

name = MariaDB

baseurl = http://yum.mariadb.org/10.1/centos7-amd64

gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

gpgcheck=1

3.安装官方mariadb命令

yum install MariaDB-server MariaDB-client -y

4.启动mariadb相关命令

mariadb数据库的相关命令是:

systemctl start mariadb #启动MariaDB

systemctl stop mariadb #停止MariaDB

systemctl restart mariadb #重启MariaDB

systemctl enable mariadb #设置开机启动

5.安装好后进行初始化

systemctl start mariadb

12142115.html

6.配置mysql

1.中文编码设置,编辑mysql配置文件/etc/my.cnf,下入以下内容

[mysqld]

character-set-server=utf8

collation-server=utf8_general_ci

log-error=/var/log/mysqld.log

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

7.授权mysql进行配置

远程连接设置哦设置所有库,所有表的所有权限,赋值权限给所有ip地址的root用户

mysql > grant all privileges on *.* to root@'%' identified by 'password';

grant all privileges on *.* to root@'%' identified by '111111'; #远程连接数据库密码111111

#刷新权限

flush privileges;

8.mysql主从复制配置流程如下

流程:主库复制写入,并写下日志,从库访问日志,重新执行sql语句写入

192.168.226.128主库

192.168.226.129从库

环境准备,准备2台服务器,安装好2这个数据库

1.主库配置

编辑主库的/etc/my.cof写入如下配置,写下日志

[mysqld]server-id=1log-bin=s18mysql-bin

2.改了配置文件重启数据库

systemctl restart mariadb

3.master主库添加从库账号,用户远程复制数据的账户

#创建用户mysql > create user 'username'@'%' identified by 'password';create user 'kevins'@'%' identified by 'kevins';

#刷新权限flush privileges;

4.授予kevins这个账号,从库的身份

grant replication slave on *.* to 'kevins'@'%';

5.实现对主数据库锁表只读,防止数据写入,数据复制失败

flush table with read lock;

6.导出当前数据库

mysqldump -uroot -p --all-databases > /opt/all.sql

7.导出数据完毕后,解锁主库,恢复可写;

unlock tables;

8.将备份导出的数据scp至Slave数据库

scp /data/all.sql root@192.168.178.130:/data/

9.查看主库的状态,可以看到日志文件的名字

show master status;

slave从库配置

1.修改从库的配置文件/etc/my.cnf

写入配置:

[mysqld]

server-id=10

2.导入主库的数据

导入数据库第一种方式:mysql -uroot -p < /opt/all.sql

导入第二种:

1.先登录进入数据库

2.执行:source /opt/all.sql

3.此时主从数据库已经在同一个起始点,开始数据同步

这是一段sql,在mysql中执行

mysql > change master to master_host='192.168.178.129(主库地址)',

master_user='kevins',   # 给予从库的账号

master_password='kevins',# 给予从库的密码

master_log_file='mysql-bin.000001',#访问日志的文件名

master_log_pos=575;

4.开启从库同步(在数据库中输入)

startslave

5.检测是否主从是否成功

show slave status\G

查看两个参数是否yes

Slave_IO_Runing:yes

Slave_SQL_Runing:yes

6.此时已经可以在主库写入数据,从库实时写入

7.配置mysql主从复制,读写分离

修改从库/etc/my.cnf添加

read-only=true

只可以读的模式

8.在主库上创建一个普通用户,在从库上进行登录,查看是否可以读写分离

主库创建:create user "ywy"@"%" identified by "ywyacd";

从库登录:mysql -uywy -p

密码:ywyacd

9.给这个普通用户查看数据库的权限

grant select on *.* to ysy@"%";

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值