mysql的中间插件proxysql的简介和安装方式

1、mysql实现读写分离的方式


mysql实现读写方式有几种方式有几下几种:

  • 程序修改mysql操作,直接和数据库通信。简单快捷的读写分离和随机的方式实现的负载均衡,权限独立分配,需要开发人员协助。
  • amoeba,直接实现读写分离和负载均衡,不用修改代码,有很灵活的数据解决方案,自己分配账户,和后端数据库权限管理独立,权限处理不够灵活。
  • mysql-proxy,直接实现读写分离和负载均衡,不用修改代码,master和slave用一样的账号,效率低。
  • mycat中间件
  • proxysql中间件(推荐使用)

2、ProxySQL简介

proxySQL是一款可以实际用于生产环境的MySQL中间件,它有官方版和percona版两种。

percona版是官方版的基础上修改的,虽然也是一个轻量级别产品,但性能很好(据测试,能处理千亿级的数据),功能也足够,能够满足中间件中间件所需的绝大多数功能,包括:

  • 最基本的读写分离,且方式多种
  • 可定制基于用户、基于schema、基于语句的规则对SQL语句经行路由。换句话说。规则很灵活。基于schema和与语句级规则,可以实现简单的sharding(分库分表)
  • 可以缓存查询结果。虽然ProxySQL的缓存策略比较简陋,但实现了基本的缓存功能,绝大多数时候也够用了,此外作者已经打算实现更丰富的缓存策略。
  • 监控后端节点。ProxySQL可以监控后端节点的多个指标,包括:ProxySQL和后端的心跳信息,后端节点的read-only/read-write,slave和master的数据同步延迟。

3、ProxySQL安装


3.1、yum的方式安装

//配置yum源
# cat <<EOF | tee /etc/yum.repos.d/proxysql.repo 
[proxysql_repo] name= ProxySQL 
baseurl=http://repo.proxysql.com/ProxySQL/proxysql-1.4.x/centos/7 
gpgcheck=1 
gpgkey=http://repo.proxysql.com/ProxySQL/repo_pub_key 
EOF
# yum -y install proxysql

警告:这种安装方式wifi上不能下载,需要手机流量下载

3.2、二进制安装

proxyslq下载地址:https://files.cnblogs.com/files/liuzhijun666/proxysql.rar

# rz							上传
# rpm  -ivh proxysql-1.4.8-1-centos7.x86_64.rpm --nodeps
# systemctl restart proxysql
# yum install -y mariadb
# ss -antl
State       Recv-Q Send-Q                          Local Address:Port                                         Peer Address:Port              
LISTEN      0      128                                         *:6032                                                    *:*                  
LISTEN      0      128                                         *:6033                                                    *:*                  
LISTEN      0      128                                         *:6033                                                    *:*                  
LISTEN      0      128                                         *:6033                                                    *:*                  
LISTEN      0      128                                         *:6033                                                    *:*                  
LISTEN      0      128                                         *:22                                                      *:*                  
LISTEN      0      100                                 127.0.0.1:25                                                      *:*                  
LISTEN      0      128                                        :::22                                                     :::*                  
LISTEN      0      100                                       ::1:25                 
# mysql -uadmin -padmin -h127.0.0.1 -P6032				//admin为管理账号(仅限本机)
mysql> show databases;
+-----+---------------+-------------------------------------+
| seq | name          | file                                |
+-----+---------------+-------------------------------------+
| 0   | main          |                                     |
| 2   | disk          | /var/lib/proxysql/proxysql.db       |
| 3   | stats         |                                     |
| 4   | monitor       |                                     |
| 5   | stats_history | /var/lib/proxysql/proxysql_stats.db |
+-----+---------------+-------------------------------------+
5 rows in set (0.01 sec)

后续操作请见mysql类的内容

猜你喜欢

转载自www.cnblogs.com/liuzhijun666/p/13170574.html