zoukankan      html  css  js  c++  java
  • ProxySQL Getting started

    一、安装

    下载安装包:下载

    下载完成后用系统包管理器安装程序:

    wget https://github.com/sysown/proxysql/releases/download/v1.4.9/proxysql_1.4.9-ubuntu16_amd64.deb
    dpkg -i proxysql_1.4.9-ubuntu16_amd64.deb

    你也可以配置apt(deb/ubuntu)或者yum(centos/redhat/...)源来安装

    1.Ubuntu / Debian:

    配置repo

    apt-get install -y lsb-release
    wget -O - 'http://repo.proxysql.com/ProxySQL/repo_pub_key' | apt-key add -
    echo deb http://repo.proxysql.com/ProxySQL/proxysql-1.4.x/$(lsb_release -sc)/ ./ 
    | tee /etc/apt/sources.list.d/proxysql.list

    安装

    apt-get update
    apt-get install proxysql OR apt-get install proxysql=version

    2.Red Hat / CentOS:

    配置repo

    cat <<EOF | tee /etc/yum.repos.d/proxysql.repo
    [proxysql_repo]
    name= ProxySQL YUM repository
    baseurl=http://repo.proxysql.com/ProxySQL/proxysql-1.4.x/centos/$releasever
    gpgcheck=1
    gpgkey=http://repo.proxysql.com/ProxySQL/repo_pub_key
    EOF

    安装

    yum install proxysql OR yum install proxysql-version

    二、service管理服务

    程序安装完成后,我们可以通过service来管理服务进程

    1.starting ProxySQL:

    service proxysql start

    2.stopping ProxySQL:

    service proxysql stop

    我们还可以通过admin管理接口来管理服务

    $ mysql -u admin -padmin -h 127.0.0.1 -P6032 --prompt='Admin> '
    Warning: Using a password on the command line interface can be insecure.
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 4
    Server version: 5.5.30 (ProxySQL Admin Module)
    
    Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    Admin> proxysql stop

    3.Restarting ProxySQL:

    service proxysql restart

    同理可以通过Admin管理接口来重启服务

    $ mysql -u admin -padmin -h 127.0.0.1 -P6032 --prompt='Admin> '
    Warning: Using a password on the command line interface can be insecure.
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 4
    Server version: 5.5.30 (ProxySQL Admin Module)
    
    Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    Admin> proxysql restart

    通过配置文件来重新初始化ProxySQL(首次启动只是创建了DB file,并没有用到config文件的所有选项)

    service proxysql initial

    三、升级

    安装新的安装包并重启ProxySQL:

    wget https://github.com/sysown/proxysql/releases/download/v1.4.9/proxysql_1.4.9-ubuntu16_amd64.deb
    dpkg -i proxysql_1.4.9-ubuntu16_amd64.deb
    service proxysql restart

    四、查看软件版本

    $ proxysql --version
    ProxySQL version v1.4.9-1.1, codename Truls

    debug版本的话输出结果会带有_DEBUG,debug版本比非debug版本启动得更慢,但是万一启动失败的话会更容易调试

    $ proxysql --version
    Main init phase0 completed in 0.000146 secs.
    ProxySQL version v1.4.9-1.1_DEBUG, codename Truls

    五、通过Admin管理接口配置ProxySQL

    首先,记住最好通过admin管理接口来配置ProxySQL,本来我们就可以更新admin数据库来配置ProxySQL,而不用重启服务,手动、自动来更新都可以。

    还有就是可以通过配置文件来配置

    1.Configuring ProxySQL through the admin interface

    用mysql客户端登录admin管理接口,本地6032端口,默认admin用户

    $ mysql -u admin -padmin -h 127.0.0.1 -P6032 --prompt='Admin> '
    Warning: Using a password on the command line interface can be insecure.
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 4
    Server version: 5.5.30 (ProxySQL Admin Module)
    
    Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    Admin>

    注意:如果采用的mysql client版本等于或高于8.0.4,那么上面的登录admin的命令得加上--default-auth=mysql_native_password选项

    登录admin后,可以通过SQL查询到所有的数据库和表

    Admin> SHOW DATABASES;
    +-----+---------+-------------------------------+
    | seq | name    | file                          |
    +-----+---------+-------------------------------+
    | 0   | main    |                               |
    | 2   | disk    | /var/lib/proxysql/proxysql.db |
    | 3   | stats   |                               |
    | 4   | monitor |                               |
    +-----+---------+-------------------------------+
    4 rows in set (0.00 sec)

    这就是由你来管理的后台服务管理列表,配置如何分流路由连接、以及其他重要的设置(查询缓存,访问控制等等),如果你在内存中修改了配置,那么你必须把它load到runtime状态才会生效,最好把他持久化到disk(重启proxysql服务后配置还在),详细配置介绍看here.

    2.Configuring ProxySQL through the config file

    就算配置文件只是配置proxysql的备选方案,其实刚刚安装完成的时候用他来启动服务也是不错的

    那我们来快速浏览一遍配置文件中一些主要的section

    从上到下

    • admin_variables:囊括了控制admin管理接口功能的所有全局变量
    • mysql_variables:包括了处理如何分流路由连接功能的所有全局变量
    • mysql_servers:包含了mysql_servers表的所有记录,这些记录定义了客户端连接该被路由到哪些后台的mysql server,文件采用cfg文件格式来组织记录,样例如下:
     mysql_servers =
     (
         {
             address="127.0.0.1"
             port=3306
             hostgroup=0
             max_connections=200
         }
     )
    • mysql_users:包含mysql_users表的所有记录,这些记录定义了能连接到proxy的用户,而且这些用户能通过proxy跳转到后台mysql server,文件采用cfg文件格式来组织记录,样例如下:
     mysql_users:
     (
         {
             username = "root"
             password = "root"
             default_hostgroup = 0
             max_connections=1000
             default_schema="information_schema"
             active = 1
         }
     )
    • mysql_query_rules:

      包含mysql_query_rules表的所有记录。这些记录定义了这样的一些规则,这些规则将连接进行分类并路由到不同的mysql server,文件采用cfg文件格式来组织记录,样例如下:(示例只是举一个通用路由规则的例子,具体还得根据实际情况创建特定的规则)

     mysql_query_rules:
     (
         {
             rule_id=1
             active=1
             match_pattern="^SELECT .* FOR UPDATE$"
             destination_hostgroup=0
             apply=1
         },
         {
             rule_id=2
             active=1
             match_pattern="^SELECT"
             destination_hostgroup=1
             apply=1
         }
     )
    • 头配置项:datadir,指明初始化数据目录

    翻译源至:getting started

  • 相关阅读:
    Nature:肿瘤转移后的基因组特征
    Nature | 生物体可以从头产生新基因
    一文读懂:DNA甲基化的作用及各种高通量检测方法比较
    Nature | 新技术scSLAM-seq可在单细胞水平揭示转录动态变化的核心特征
    一文读懂长非编码RNA(lncRNA)的分类、功能及测序鉴定方法
    Science重磅 | 新技术Slide-seq能以高空间分辨率测量全基因组的表达情况
    Science综述 | 用单细胞基因组学将人类细胞表型匹配到基因型
    Nature Methods | 新软件SAVER-X可对单细胞转录组学数据进行有效降噪
    Circular RNA的产生机制、功能及RNA-seq数据鉴定方法
    一文搞懂基因融合(gene fusion)的定义、产生机制及鉴定方法
  • 原文地址:https://www.cnblogs.com/geek-ace/p/9523615.html
Copyright © 2011-2022 走看看