MySQL / Redis / MongoDB 读写分离设置

数据库读写分离设置

MySQL

  
  # master配置
  server-id=200   # 一般取IP的最后一组数字
  innodb_flush_log_at_trx_commit=2
  sync_binlog=1
  log-bin=mysql-bin-200
  binlog-do-db=  # 同步的数据库的名称,全部可以使用 *
  重启MySQL
  # 客户端执行命令,授权给 slave
  grant replication slave on *.* to 'zhang'@"IP" identified by '123456';
  show master status;
  ​
  # slave 更改配置
  server-id=201
  innodb_flush_log_at_trx_commit=2
  sync_binlog=1
  log-bin=mysql-bin-201
  ​
  # slave mysql客户端执行命令
  change master to master_host='10.7.152.77',  # 连接 master的 IP
  master_user='zhang',  # master授权的用户
  master_password='123456',  # 密码
  master_log_file='mysql-bin-200.000002',  # master 的日志位置
  master_log_pos=448;  # master 的 Position
  ​
  start salve;
  show slave status\G; # 查看状态

Redis

  • 通过修改conf文件来配置主从, 一般都是在一台服务器上面作为专门的 redis 服务器

  • 启动 redis-server redis.conf

  ​
  # master  master.conf
  ​
  port 6000
  requirepass 123456    # 480行
  # redis-server master.conf
  # 测试  redis-benchmark -h IP -p Port -a password
  # 查看连接
  ​
  # slave  slave.conf  应该配置多个 slave 对master进行读取
  ​
  port 6001
  slaveof 127.0.0.1 6000
  masterauth 123456  # 对主机的验证,也是master的密码
  requirepass 123456  # master设置的密码
  ​
  # redis-server slave.conf
  ​
  # 配置 sentinel(哨兵,守护进程),当master宕机时,选取 slave 作为master
  # 更该 sentinel.conf文件(最好将原文件复制一份进行更改)
  ​
  bind IP # master-IP 即 内网 IP
  port 端口
  sentinel monitor mymaster IP port num # master的公网IP,port,哨兵数,指当有num个哨兵同时监测到master宕机时,开始选举新的master
  sentinel anth-pass mymaster <password>  # master的 密码
  sentinel down-after-millisenconds mymaster 3000   # 开始投票的反应时间
  sentinel failover-timeout mymaster 180000   # 设置返回的时间,在规定时间返回可以继续作为master
  ​
  # 启动哨兵,哨兵也会宕机,应该多启动几个进行守护
  redis-server sentinel.conf --sentinel
  ​

MongoBD

  • 可以在 slave 上启动多个 salve 创建不同的目录进行保存数据,实现master执行20%的写和salve实现80%的查询操作

  # master 启动
  mongod --bind_ip_all --dbpath /data/master -master
  ​
  # slave 启动
  mongod --dbpath /data/slave -slave -source masterIP:port  # master的IP和端口

PostgreSQL

这个很多,推荐参考这篇文章 https://yq.aliyun.com/articles/59344

猜你喜欢

转载自blog.csdn.net/zhang_Ming_lu/article/details/81542877
今日推荐