centos7上mariadb主从复制

  

1 mariadb基本命令
1。启动mysql
systemctl开始mariadb

  

2。linux客户端连接自己
mysql -uroot - p - h 127.0.0.1

  

3。远程链接mysql服务端
mysql -uroot - p - h 192.168.1.197
远程授权:
上的所有特权授予。 root@" 192.168.1.100"被“redhat"


冲洗特权   

4。修改mysql密码
MariaDB[(一)]比;设置密码=密码(“redhat123”);

  

5。创建mysql用户
创建用户xiaochun@‘%’被‘xc666;

  

6。查询mysql库中的用户信息
使用mysql;
选择主机用户,从用户密码;

  

7。授权语句
给李俊这个用户,授予创建数据库的权限

  

mysql使用格兰特命令对账户进行授权,格兰特命令常见格式如下

  

格兰特权限在数据库。表名来账户@主机名对特定数据库中的特定表授权
格兰特权限在数据库。账户@主机名对特定数据库中的所有表给与授权
格兰特权限1,权限2,权限3
账户@主机名对所有库中的所有表给与多个授权
上的所有特权授予。*账户@主机名对所有库和所有表授权所有权限

  

#授予小春创建的权限,对于所有的库表生效
格兰特创建 xiaochun@" %”;被“xc666”;
#授予小春用户,只有创建mymysql数据库的权限
格兰特mymysql创建。* xiaochun@" %”;被“xc666”;

  

#授予用户最大的权限,所有的权限
上的所有特权授予。 username@‘%’被‘密码’;

  

8。移除权限
MariaDB[(一)]比;撤销所有上的特权。从xiaochun@" %”;被“xc666”;

  

9。数据库的备份与恢复
#备份
, mysqldump - u root - p——所有数据库比;/tmp/db。sql
#数据导入,方式有2种源/tmp/db.sql;

  

第二种

  

mysql -uroot - p & lt;/tmp/db.sql

  

第三种

  navicat

  

第四种,如果你数据量特别大的话,使用第三方工具

  

xtrabackup   

主从复制的7个步骤

  
      <李>主数据库写入数据之后,会有数据更改(数据变化)记录   <李>有变化记录之后,将增删改的一些sql语句记录到本地的二进制日志(二进制日志)中李   <李>从库会一直开启着一个线程李   <李>通过线程去读取这个二进制日志的内容李   <李>从库会将数据写入到自己的中继日志(中继日志)中李   <李>从库会将中继日志中的操作转化线程为SQL (SQL语句)   <李>通过转化的SQL语句写入到自己的数据库,两边的数据就一致了李   
  

2 mariadb主从复制实验

  

准备两台数据库服务器
主服务器:192.168.11.247
从服务器:192.168.11.246

  

在主服务器(192.168.11.247)上操作

  

如果数据库是新安装的数据库的话,没有中文配置,还需要添加中文配置

  

vim/etc/my.cnf
(mysqld)
character-set-server=utf8
collation-server=utf8_general_ci
日志错误=/var/log/mysqld.log
服务器id=1
log-bin=qishi-logbin

  

[客户]
default-character-set=utf8
(mysql)
default-character-set=utf8

  

启动mariadb
systemctl开始mariadb

  

新建用于主从同步的用户细细,允许所有ip登录主库
创建用户“细细”@“%”被“xixi666”,

  

给从库账号授权,给细细从主库复制的权限
格兰特relication奴隶。“细细”@“%”;

  

检查主库创建的复制账号
选择用户,从mysql.user主机;

  

检查授权账号的权限
显示赠款xixi@‘%’;

  

对主数据库锁表设置只读,防止数据写入,数据复制失败
刷新表读锁,

  

检查主库的状态,并记录下日志文件的名字和位置
显示主状态;

  

记录下主数据库的写入状态和日志文件的名字

  

锁表后,再单独打开一个ssh窗口,导出数据库的所有数据,

  

在主库上导出数据
, mysqldump - u root - p——所有数据库比;/opt/lanmaster.sql

  

在丛库(192.168.11.246)上配置

  

关闭数据库服务
systemctl停止mariadb

  

在丛库(192.168.11.246)上打开/etc/my.cf

  

如果是新安装的数据库,还需要添加中文配置
(mysqld)
character-set-server=utf8
collation-server=utf8_general_ci
日志错误=/var/log/mysqld.log
[客户]
default-character-set=utf8
(mysql)
default-character-set=utf8

  

服务器id=3只读=true

  

重启数据库

centos7上mariadb主从复制