mysql相关笔记

mysql主从复制步骤
1,创建用户
create user 'zhongc'@'192.168.0.%' identified by '123456';
指定访问者host
grant replication slave on *.* to 'zhongc'@'192.168.0.%' identified by '123456';
需要哪些权限

mysql日志

  • Error log 错误日志
  • General query log 普通查询日志
  • Slow query log 慢查询日志
  • Binary log 二进制日志 ,记录了所有操作mysql的日志 DDL ,DML
Binary log
  • 增量备份
  • 主从数据同步

mysql5.7版本默认不开启binlog日志
show variables like '%log_bin%'

  • 如何开启binlog日志
[mysqld]
server_id=1  # 不能重复
log_bin=mysql-bin  #binlog日志文件的名字 
binlog-format=ROW
binlog-do-db=demo
+---------------------------------+---------------------------------------+
| Variable_name                   | Value                                 |
+---------------------------------+---------------------------------------+
| log_bin                         | ON                                    |
| log_bin_basename                | /usr/local/mysql/data/mysql-bin       |
| log_bin_index                   | /usr/local/mysql/data/mysql-bin.index |
| log_bin_trust_function_creators | OFF                                   |
| log_bin_use_v1_row_events       | OFF                                   |
| sql_log_bin                     | ON                                    |
+---------------------------------+---------------------------------------+

mysql-bin.000001 是数据文件,保存日志数据
mysql-bin.index 是索引文件, 保存日志文件的名字

  • 查看binlog

show binlog enevts in 'filename'
或者
mysqlbinlog filename
查看日志当前状态
show master status

提价日志,生成一个新的日志文件
flush logs
查看所有日志文件
show master logs
删除所有日志文件
reset master

  • 使用binlog进行数据恢复

mysqlbinlog mysql-bin.00001 | mysql -uroot -p
mysqlbinlog mysql-bin.000001 -start-position 219 -stop-position 421 | mysql -uroot -p

搭建主从

  • 整体规划
  • 准备机器,配置网络,安装mysql
  • 配置主节点
    -- 创建用户
    -- 开启binlog
  • 配置从节点
    -- 配置同步日志
    [mysqld]
    server_id=2  # 不能重复
    relay-log=/var/lib/mysql/relay-bin   # binlog日志文件的名字 
    relay-log-index=/var/lib/mysql/relay-bin.index
    
    #修改 auto.cnf 中的uuid与主节点不同
    

-- 指定主节点ip,端口,用户

change master to master_host='192.168.0.105',master_port=3306,master_user='zhongc',master_pas sword='123456',master_log_file='mysql-bin.000001',master_log_pos=0;

查看从节点
show salve status\G;
如果
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
就表示成功
-- 启动从节点

主主复制

  • 在从库开启binlog

    [mysqld]
    server_id=2  # 不能重复
    log_bin=mysql-bin  #binlog日志文件的名字 
    relay-log=/var/lib/mysql/relay-bin   # binlog日志文件的名字 
    
  • 在从库创建用户并赋予权限

  • 在主节点指向从库节点ip,端口,用户

  • 配置自动增长 的步长

HaProxy

  • 代理tcp连接
    -- 可以代理多个从节点,进行负载均衡

KeepAlived

  • ka会虚拟一个ip,来绑定到集群中master机器上,当master挂了,ka会把虚拟ip绑定到backup机器上,来实现切换,可以实现高可用

Mycat

  • 用户从哪里来
    -- server.xml

你可能感兴趣的:(mysql相关笔记)