ProxySQL配置之MySQL服务器配置
备注:文章编写时间201904-201905期间,后续官方在github的更新没有被写入
MySQL服务器配置 [MySQL Server Configuration]
一、在ProxySQL中配置后端MySQL服务器[Configuring Backend MySQL Servers in ProxySQL]
MySQL服务器的配置在mysql_servers表和mysql_replication_hostgroups表(可选)中。
友情提醒:在阅读下部分之前,请确保了解了ProxySQL使用的多层配置系统。
特别注意:
1)如果没有运行LOAD MYSQL SERVERS TO RUNTIME,那么mysql_servers和mysql_replication_hostgroups表中的更改不会生效;
2)如果没有运行SAVE MYSQL SERVERS TO DISK 保存配置到的磁盘,那么mysql_servers和mysql_replication_hostgroups表中的更改
将在重启/崩溃后丢失。
对mysql_servers和mysql_replication_hostgroups的更改将被视为编辑配置文件而不会被保存或让服务重新加载。
二、将mysql服务器配置从MEMORY层复制到RUNTIME层 [Copying mysql servers from memory to runtime]
将MySQL服务器和复制主机组配置信息从MEMORY层数据库加载到RUNTIME层的数据结构在中:
Admin> LOAD MYSQL SERVERS TO RUNTIME;
其他可被接受的别名操作:
Admin> LOAD MYSQL SERVERS TO RUN;
Admin> LOAD MYSQL SERVERS FROM MEM;
Admin> LOAD MYSQL SERVERS FROM MEMORY;
三、将mysql服务器配置从MEMORY层持久化到DISK层[Copying mysql servers from memory to disk]
将MySQL服务器和复制主机组配置信息从MEMORY层数据库保留到DISK的数据库上:
Admin> SAVE MYSQL SERVERS TO DISK;
其他可被接受的别名操作:
Admin> SAVE MYSQL SERVERS FROM MEM;
Admin> SAVE MYSQL SERVERS FROM MEMORY;
四、将mysql服务器配置从RUNTIME层拷贝到MEMORY层[Copying mysql servers from runtime to memory]
将MySQL服务器和复制主机组配置信息从RUNTIME层数据结构保留到MEMORY数据库:
Admin> SAVE MYSQL SERVERS TO MEMORY;
其他可被接受的别名操作:
Admin> SAVE MYSQL SERVERS TO MEM;
Admin> SAVE MYSQL SERVERS FROM RUN;
Admin> SAVE MYSQL SERVERS FROM RUNTIME;
五、将mysql服务器从DISK层复制到MEMORY层[Copying mysql servers from disk to memory]
将MySQL服务器和复制主机组配置信息从DISK层数据库加载到MEMORY层数据库:
Admin> LOAD MYSQL SERVERS TO MEMORY;
其他可被接受的别名操作:
Admin> LOAD MYSQL SERVERS TO MEM;
Admin> LOAD MYSQL SERVERS FROM DISK;
六、新增服务器[Adding a new server]
如果要添加新服务器,必须在mysql_servers表中插入新行以记录相关配置信息。注意,该表有几列是有默认值的。
以下添加了一个具有所有默认配置的新后端(服务器):
Admin> SELECT * FROM mysql_servers;
Empty set (0.00 sec)
Admin> INSERT INTO mysql_servers (hostname) VALUES ('127.0.0.1');
Query OK, 1 row affected (0.00 sec)
Admin> SELECT * FROM mysql_servers\G
*************************** 1. row ***************************
hostgroup_id: 0
hostname: 127.0.0.1
port: 3306
gtid_port: 0
status: ONLINE
weight: 1
compression: 0
max_connections: 1000
max_replication_lag: 0
use_ssl: 0
max_latency_ms: 0
comment:
1 row in set (0.00 sec)
七、将新服务器添加到主机组[Adding new servers to a hostgroup]
Admin> SELECT hostgroup_id,hostname,port FROM mysql_servers;
+--------------+-----------+------+
| hostgroup_id | hostname | port |
+--------------+-----------+------+
| 0 | 127.0.0.1 | 3306 |
+--------------+-----------+------+
1 row in set (0.00 sec)
INSERT INTO mysql_servers (hostgroup_id, hostname ,port)
VALUES (1, '127.0.0.1' ,24801), (1, '127.0.0.1' ,24802), (1,'127.0.0.1' ,24803);
Query OK, 3 rows affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port FROM mysql_servers;
+--------------+-----------+-------+
| hostgroup_id | hostname | port |
+--------------+-----------+-------+
| 0 | 127.0.0.1 | 3306 |
| 1 | 127.0.0.1 | 24801 |
| 1 | 127.0.0.1 | 24802 |
| 1 | 127.0.0.1 | 24803 |
+--------------+-----------+-------+
4 rows in set (0.00 sec)
八、配置与后端的连接数限制[Limiting the number of connections to a backend]
Admin> SELECT hostgroup_id,hostname,port,max_connections FROM mysql_servers;
+--------------+-----------+-------+-----------------+
| hostgroup_id | hostname | port | max_connections |
+--------------+-----------+-------+-----------------+
| 0 | 127.0.0.1 | 3306 | 1000 |
| 1 | 127.0.0.1 | 24801 | 1000 |
| 1 | 127.0.0.1 | 24802 | 1000 |
| 1 | 127.0.0.1 | 24803 | 1000 |
+--------------+-----------+-------+-----------------+
4 rows in set (0.00 sec)
Admin> UPDATE mysql_servers SET max_connections=10 WHERE hostname='127.0.0.1' AND port=24802;
Query OK, 1 row affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,max_connections FROM mysql_servers;
+--------------+-----------+-------+-----------------+
| hostgroup_id | hostname | port | max_connections |
+--------------+-----------+-------+-----------------+
| 0 | 127.0.0.1 | 3306 | 1000 |
| 1 | 127.0.0.1 | 24801 | 1000 |
| 1 | 127.0.0.1 | 24802 | 10 |
| 1 | 127.0.0.1 | 24803 | 1000 |
+--------------+-----------+-------+-----------------+
4 rows in set (0.00 sec)
九、通过改变后端的权重来确定流量的优先级[Prioritizing traffic by changing the weight of a backend]
特别注意:权重仅在主机组内起作用,值越大被分到的流量的几率越多!!
Admin> SELECT hostgroup_id,hostname,port,weight FROM mysql_servers;
+--------------+-----------+-------+--------+
| hostgroup_id | hostname | port | weight |
+--------------+-----------+-------+--------+
| 0 | 127.0.0.1 | 3306 | 1 |
| 1 | 127.0.0.1 | 24801 | 1 |
| 1 | 127.0.0.1 | 24802 | 1 |
| 1 | 127.0.0.1 | 24803 | 1 |
+--------------+-----------+-------+--------+
4 rows in set (0.00 sec)
Admin> UPDATE mysql_servers SET weight=1000 WHERE port IN (24803) AND hostgroup_id=1;
Query OK, 1 row affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,weight FROM mysql_servers;
+--------------+-----------+-------+--------+
| hostgroup_id | hostname | port | weight |
+--------------+-----------+-------+--------+
| 0 | 127.0.0.1 | 3306 | 1 |
| 1 | 127.0.0.1 | 24801 | 1 |
| 1 | 127.0.0.1 | 24802 | 1 |
| 1 | 127.0.0.1 | 24803 | 1000 |
+--------------+-----------+-------+--------+
4 rows in set (0.00 sec)
十、对特定后端使用SSL连接[Using SSL connections for a specific backend]
此示例显示如何为后端配置SSL(一个状态值而已),(但这不是全局配置SSL,全局请移步SSL configuration)。
Admin> SELECT hostgroup_id,hostname,port,use_ssl FROM mysql_servers;
+--------------+-----------+-------+---------+
| hostgroup_id | hostname | port | use_ssl |
+--------------+-----------+-------+---------+
| 0 | 127.0.0.1 | 3306 | 0 |
| 1 | 127.0.0.1 | 24801 | 0 |
| 1 | 127.0.0.1 | 24802 | 0 |
| 1 | 127.0.0.1 | 24803 | 0 |
+--------------+-----------+-------+---------+
4 rows in set (0.00 sec)
Admin> UPDATE mysql_servers SET use_ssl=1 WHERE hostname='127.0.0.1' AND port=3306;
Query OK, 1 row affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,use_ssl FROM mysql_servers;
+--------------+-----------+-------+---------+
| hostgroup_id | hostname | port | use_ssl |
+--------------+-----------+-------+---------+
| 0 | 127.0.0.1 | 3306 | 1 |
| 1 | 127.0.0.1 | 24801 | 0 |
| 1 | 127.0.0.1 | 24802 | 0 |
| 1 | 127.0.0.1 | 24803 | 0 |
+--------------+-----------+-------+---------+
4 rows in set (0.00 sec)
十一、配置自动忽略(有复制延时的SLAVE)的延时阀值 [Automatically shunning slaves with replication lag]
Admin> SELECT hostgroup_id,hostname,port,max_replication_lag FROM mysql_servers;
+--------------+-----------+-------+---------------------+
| hostgroup_id | hostname | port | max_replication_lag |
+--------------+-----------+-------+---------------------+
| 0 | 127.0.0.1 | 3306 | 0 |
| 1 | 127.0.0.1 | 24801 | 0 |
| 1 | 127.0.0.1 | 24802 | 0 |
| 1 | 127.0.0.1 | 24803 | 0 |
+--------------+-----------+-------+---------------------+
4 rows in set (0.00 sec)
Admin> UPDATE mysql_servers SET max_replication_lag=30 WHERE hostname='127.0.0.1' AND port=24803;
Query OK, 1 row affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,max_replication_lag FROM mysql_servers;
+--------------+-----------+-------+---------------------+
| hostgroup_id | hostname | port | max_replication_lag |
+--------------+-----------+-------+---------------------+
| 0 | 127.0.0.1 | 3306 | 0 |
| 1 | 127.0.0.1 | 24801 | 0 |
| 1 | 127.0.0.1 | 24802 | 0 |
| 1 | 127.0.0.1 | 24803 | 30 |
+--------------+-----------+-------+---------------------+
4 rows in set (0.00 sec)
使用此配置后,只有在主从复制延迟超过30秒的情况下,SLAVE才会被自动的暂时忽略。
如果max_replication_lag列设置为零(SET max_replication_lag = 0),则Monitor模块根本不会检查复制延迟,
即使复制延迟超过了阈值。更多信息请参阅参数mysql-monitor_slave_lag_when_null。
十二、将同一个服务器添加到两个不同的主机组[Adding a server to two different hostgroups]
mysql_servers表上的主键为(hostgroup_id,hostname,port);这意味着同一服务器可以存在于两个不同的主机组中。
Admin> SELECT hostgroup_id,hostname,port,weight,max_replication_lag FROM mysql_servers;
+--------------+-----------+-------+--------+---------------------+
| hostgroup_id | hostname | port | weight | max_replication_lag |
+--------------+-----------+-------+--------+---------------------+
| 0 | 127.0.0.1 | 3306 | 1 | 0 |
| 1 | 127.0.0.1 | 24801 | 1 | 0 |
| 1 | 127.0.0.1 | 24802 | 1 | 0 |
| 1 | 127.0.0.1 | 24803 | 1000 | 30 |
+--------------+-----------+-------+--------+---------------------+
4 rows in set (0.00 sec)
Admin> INSERT INTO mysql_servers(hostgroup_id,hostname,port) VALUES (1,'127.0.0.1',3306);
Query OK, 1 row affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,weight,max_replication_lag FROM mysql_servers;
+--------------+-----------+-------+--------+---------------------+
| hostgroup_id | hostname | port | weight | max_replication_lag |
+--------------+-----------+-------+--------+---------------------+
| 0 | 127.0.0.1 | 3306 | 1 | 0 |
| 1 | 127.0.0.1 | 24801 | 1 | 0 |
| 1 | 127.0.0.1 | 24802 | 1 | 0 |
| 1 | 127.0.0.1 | 24803 | 1000 | 30 |
| 1 | 127.0.0.1 | 3306 | 1 | 0 |
+--------------+-----------+-------+--------+---------------------+
5 rows in set (0.00 sec)
Admin> UPDATE mysql_servers SET max_replication_lag=30, weight=1000;
Query OK, 5 rows affected (0.00 sec)
Admin> UPDATE mysql_servers SET weight=1 WHERE hostname='127.0.0.1' AND hostgroup_id=1 AND port=3306;
Query OK, 1 row affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,weight,max_replication_lag FROM mysql_servers;
+--------------+-----------+-------+--------+---------------------+
| hostgroup_id | hostname | port | weight | max_replication_lag |
+--------------+-----------+-------+--------+---------------------+
| 0 | 127.0.0.1 | 3306 | 1000 | 30 |
| 1 | 127.0.0.1 | 24801 | 1000 | 30 |
| 1 | 127.0.0.1 | 24802 | 1000 | 30 |
| 1 | 127.0.0.1 | 24803 | 1000 | 30 |
| 1 | 127.0.0.1 | 3306 | 1 | 30 |
+--------------+-----------+-------+--------+---------------------+
5 rows in set (0.00 sec)
在上面的示例中,对于hostgroup为1的组来说,如果配置为提供读取流量,则99.95%的流量将发送到权重为1000的24801、24802和24803
这3台服务器上,而0.05%的流量将正常发送到3306上。如果24801、24802和24803这3台服务器都不可用,那么所有的读取流量都将
发往3306上。
注意:max_replication_lag仅适用于SLAVE节点。如果服务器未启用复制功能,则Monitor不会执行任何操作。
十三、在后端服务器上启用压缩[Enable compression on a backend server]
要启用压缩,只需将mysql_servers.compression列设置为非零值就足够了。
请注意:
1、压缩功能仅在将该设置加载到RUNTIME层后新建立的连接上生效,之前已有连接不生效。
2、这里的压缩是指ProxySQL作为Client与后端MySQL进行通信时,使用的对数据进行压缩的功能,类似MySQL客户端的–compress选项。
MySQL 压缩协议适合的场景是 MySQL 的服务器端和客户端之间传输的数据量很大,或者可用带宽不高的情况,典型的场景有如下两个 :
1> 查询大量的数据,带宽不够(比如导出数据的时候)
2> 复制的时候 binlog 量太大,启用 slave_compressed_protocol 参数进行日志压缩复制。
Admin> SELECT hostgroup_id,hostname,port,compression FROM mysql_servers;
+--------------+-----------+-------+-------------+
| hostgroup_id | hostname | port | compression |
+--------------+-----------+-------+-------------+
| 0 | 127.0.0.1 | 3306 | 0 |
| 1 | 127.0.0.1 | 24801 | 0 |
| 1 | 127.0.0.1 | 24802 | 0 |
| 1 | 127.0.0.1 | 24803 | 0 |
| 1 | 127.0.0.1 | 3306 | 0 |
+--------------+-----------+-------+-------------+
5 rows in set (0.00 sec)
Admin> UPDATE mysql_servers SET compression=1 WHERE hostname='127.0.0.1' AND port=24802 AND hostgroup_id=1;
Query OK, 1 row affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,compression FROM mysql_servers;
+--------------+-----------+-------+-------------+
| hostgroup_id | hostname | port | compression |
+--------------+-----------+-------+-------------+
| 0 | 127.0.0.1 | 3306 | 0 |
| 1 | 127.0.0.1 | 24801 | 0 |
| 1 | 127.0.0.1 | 24802 | 1 |
| 1 | 127.0.0.1 | 24803 | 0 |
| 1 | 127.0.0.1 | 3306 | 0 |
+--------------+-----------+-------+-------------+
5 rows in set (0.00 sec)
十四、安全的禁用后端服务器[Gracefully disabling a backend server]
要安全的禁用后端服务器,需要将其状态更改为 OFFLINE_SOFT 即可。其上活动事务和连接仍将可用,但此后不会向该节点发送新流量。
Admin> SELECT hostgroup_id,hostname,port,status FROM mysql_servers;
+--------------+-----------+-------+--------+
| hostgroup_id | hostname | port | status |
+--------------+-----------+-------+--------+
| 0 | 127.0.0.1 | 3306 | ONLINE |
| 1 | 127.0.0.1 | 24801 | ONLINE |
| 1 | 127.0.0.1 | 24802 | ONLINE |
| 1 | 127.0.0.1 | 24803 | ONLINE |
| 1 | 127.0.0.1 | 3306 | ONLINE |
+--------------+-----------+-------+--------+
5 rows in set (0.00 sec)
Admin> UPDATE mysql_servers SET status='OFFLINE_SOFT' WHERE hostname='127.0.0.1' AND port=24802 AND hostgroup_id=1;
Query OK, 1 row affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,status FROM mysql_servers;
+--------------+-----------+-------+--------------+
| hostgroup_id | hostname | port | status |
+--------------+-----------+-------+--------------+
| 0 | 127.0.0.1 | 3306 | ONLINE |
| 1 | 127.0.0.1 | 24801 | ONLINE |
| 1 | 127.0.0.1 | 24802 | OFFLINE_SOFT |
| 1 | 127.0.0.1 | 24803 | ONLINE |
| 1 | 127.0.0.1 | 3306 | ONLINE |
+--------------+-----------+-------+--------------+
5 rows in set (0.00 sec)
十五、即刻禁用后端服务器[Immediately disabling a backend server]
要立即禁用后端服务器,需要将其状态更改为 OFFLINE_HARD 即可。此后,所有当前流量将立即终止,并且不会发送新流量到该节点。
Admin> SELECT hostgroup_id,hostname,port,status FROM mysql_servers;
+--------------+-----------+-------+--------------+
| hostgroup_id | hostname | port | status |
+--------------+-----------+-------+--------------+
| 0 | 127.0.0.1 | 3306 | ONLINE |
| 1 | 127.0.0.1 | 24801 | ONLINE |
| 1 | 127.0.0.1 | 24802 | OFFLINE_SOFT |
| 1 | 127.0.0.1 | 24803 | ONLINE |
| 1 | 127.0.0.1 | 3306 | ONLINE |
+--------------+-----------+-------+--------------+
5 rows in set (0.01 sec)
Admin> UPDATE mysql_servers SET status='OFFLINE_HARD' WHERE hostname='127.0.0.1' AND port=24801 AND hostgroup_id=1;
Query OK, 1 row affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,status FROM mysql_servers;
+--------------+-----------+-------+--------------+
| hostgroup_id | hostname | port | status |
+--------------+-----------+-------+--------------+
| 0 | 127.0.0.1 | 3306 | ONLINE |
| 1 | 127.0.0.1 | 24801 | OFFLINE_HARD |
| 1 | 127.0.0.1 | 24802 | OFFLINE_SOFT |
| 1 | 127.0.0.1 | 24803 | ONLINE |
| 1 | 127.0.0.1 | 3306 | ONLINE |
+--------------+-----------+-------+--------------+
5 rows in set (0.00 sec)
十六、重新启用脱机/禁用的后端服务器[Re-enabling an offline / disabled backend server]
要将离线的后端重新启用,只需将其状态更改回 ONLINE 就足够了。
Admin> SELECT hostgroup_id,hostname,port,status FROM mysql_servers;
+--------------+-----------+-------+--------------+
| hostgroup_id | hostname | port | status |
+--------------+-----------+-------+--------------+
| 0 | 127.0.0.1 | 3306 | ONLINE |
| 1 | 127.0.0.1 | 24801 | OFFLINE_HARD |
| 1 | 127.0.0.1 | 24802 | OFFLINE_SOFT |
| 1 | 127.0.0.1 | 24803 | ONLINE |
| 1 | 127.0.0.1 | 3306 | ONLINE |
+--------------+-----------+-------+--------------+
5 rows in set (0.00 sec)
Admin> UPDATE mysql_servers SET status='ONLINE' WHERE status NOT IN ('ONLINE'); ==>这里用了NOT,可根据实际情况修改过滤条件
Query OK, 2 rows affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,status FROM mysql_servers;
+--------------+-----------+-------+--------+
| hostgroup_id | hostname | port | status |
+--------------+-----------+-------+--------+
| 0 | 127.0.0.1 | 3306 | ONLINE |
| 1 | 127.0.0.1 | 24801 | ONLINE |
| 1 | 127.0.0.1 | 24802 | ONLINE |
| 1 | 127.0.0.1 | 24803 | ONLINE |
| 1 | 127.0.0.1 | 3306 | ONLINE |
+--------------+-----------+-------+--------+
5 rows in set (0.00 sec)
十七、删除后端服务器[Removing a backend server]
ProxySQL允许将一个后端服务器彻底的删除,只需要将其从mysql_servers表中完全删除即可。
Admin> SELECT hostgroup_id,hostname,port,status FROM mysql_servers;
+--------------+-----------+-------+--------+
| hostgroup_id | hostname | port | status |
+--------------+-----------+-------+--------+
| 0 | 127.0.0.1 | 3306 | ONLINE |
| 1 | 127.0.0.1 | 24801 | ONLINE |
| 1 | 127.0.0.1 | 24802 | ONLINE |
| 1 | 127.0.0.1 | 24803 | ONLINE |
| 1 | 127.0.0.1 | 3306 | ONLINE |
+--------------+-----------+-------+--------+
5 rows in set (0.00 sec)
注意:虽然可以直接执行删除操作,但是为了操作的平滑、安全,数据的完整、可控,还是建议先修改状态让其软下线,等待其上执行的所有SQL都结束后再执行后面的删除动作。
Admin> UPDATE mysql_servers SET status='OFFLINE_SOFT' WHERE hostgroup_id=1 AND port IN (3306,24802,24803);
Query OK, 3 rows affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,status FROM mysql_servers;
+--------------+-----------+-------+--------------+
| hostgroup_id | hostname | port | status |
+--------------+-----------+-------+--------------+
| 0 | 127.0.0.1 | 3306 | ONLINE |
| 1 | 127.0.0.1 | 24801 | ONLINE |
| 1 | 127.0.0.1 | 24802 | OFFLINE_SOFT |
| 1 | 127.0.0.1 | 24803 | OFFLINE_SOFT |
| 1 | 127.0.0.1 | 3306 | OFFLINE_SOFT |
+--------------+-----------+-------+--------------+
5 rows in set (0.00 sec)
Admin> DELETE FROM mysql_servers WHERE hostgroup_id=1 AND port IN (3306,24802,24803);
Query OK, 3 rows affected (0.00 sec)
Admin> SELECT hostgroup_id,hostname,port,status FROM mysql_servers;
+--------------+-----------+-------+--------+
| hostgroup_id | hostname | port | status |
+--------------+-----------+-------+--------+
| 0 | 127.0.0.1 | 3306 | ONLINE |
| 1 | 127.0.0.1 | 24801 | ONLINE |
+--------------+-----------+-------+--------+
2 rows in set (0.00 sec)
在ProxySQL内部,直接删除后端服务和将其设置为OFFLINE_HARD的方式相同。当执行LOAD MYSQL SERVERS TO RUNTIME时,
Hostgroup_Manager将检测到后端服务器已被删除,并在内部将其标记为OFFLINE_HARD。
ProxySQL配置之MySQL服务器配置的更多相关文章
- ProxySQL 配置详解及读写分离(+GTID)等功能说明 (完整篇)
ProxySQL是灵活强大的MySQL代理层, 是一个能实实在在用在生产环境的MySQL中间件,可以实现读写分离,支持 Query 路由功能,支持动态指定某个 SQL 进行 cache,支持动态加载配 ...
- 如何配置远程mysql服务器
如何配置远程mysql服务器 分配用户权限 可以先看一下目前的用户权限状况: use mysql; select host,user,password from user; 然后分配新的权限给某一用户 ...
- laravel5 数据库配置(MySQL)
laravel5 数据库配置(MySQL) 首先有一个安装完成可以运行的laravel框架. 配置database.php 进入laravel根目录. 在config目录下找到database.php ...
- [mysql]brew 安装 配置 操作 mysql(中文问题)
mac 下卸载mysqldmg mac下mysql的DMG格式安装内有安装文件,却没有卸载文件--很郁闷的事. 网上搜了一下,发现给的方法原来得手动去删. 很多文章记述要删的文件不完整,后来在stac ...
- ubuntu中为hive配置远程MYSQL database
一.安装mysql $ sudo apt-get install mysql-server 启动守护进程 $ sudo service mysql start 二.配置mysql服务与连接器 1.安装 ...
- cas+tomcat+shiro实现单点登录-3-CAS服务器深入配置(连接MYSQL)
目录 1.tomcat添加https安全协议 2.下载cas server端部署到tomcat上 3.CAS服务器深入配置(连接MYSQL) 4.Apache Shiro 集成Cas作为cas cli ...
- MySQL基础配置之mysql的默认字符编码的设置(my.ini设置字符编码) - 转载
MySQL基础配置之mysql的默认字符编码的设置(my.ini设置字符编码) MySQL的默认编码是Latin1,不支持中文,那么如何修改MySQL的默认编码呢,下面以设置UTF-8为例来说明. 需 ...
- mycat配置实现mysql读写分离
需要先把mysql的主从复制配置好,然后才可以开始mycat的配置 m ysql主从复制配置:https://www.cnblogs.com/renjianjun/p/9093062.html myc ...
- Centos7 安装配置优化mysql(mariadb分支)
1.说明 由于在centos7的yum仓库中没有mysql,centos7用mariadb替代了mysql. mariadb是mysql源代码的一个分支, mysql被ORACLE闭源,而mariad ...
随机推荐
- mt19937 用法
老是忘记怎么用,自己写一个用作备忘录吧. 首先需要的头文件: #include <random> 或者是 #include <bits/stdc++.h> //万能头 yyds ...
- centos系统管理高级篇
1 enable virtual box 控制 - 关机 可以通过虚拟机的关机按钮执行关机,而不是登陆centos再执行init 0 首先,安装acpid包 如果你的centos已经安装这个包,就省略 ...
- 揭开服务网格~Istio Service Mesh神秘的面纱
目录 一.写在前面 二.微服务与K8S 三.服务网格与K8S 四.常见的产品 五.Istio架构 六.Istio的核心资源介绍 6.1.VirtualService 6.2.Destination R ...
- Node.js精进(10)——性能监控(下)
本节会重点分析内存和进程奔溃,并且会给出相应的监控方法. 本系列所有的示例源码都已上传至Github,点击此处获取. 一.内存 虽然在 Node.js 中并不需要手动的对内存进行分配和销毁,但是在开发 ...
- 多重分派(multiple dispatch)与访问者模式
什么是双重分派 什么是分派(dispatch) 首先我们需要理解「分派」的含义.分派就是将方法调用与对应的具体方法绑定起来.而判断的依据有两点,这两者可称为「宗量」: 方法的接收者,也就是哪个对象调用 ...
- 常见加密算法C#实现(一)
前言:最近项目中需要用到字符串加解密,遂研究了一波,发现密码学真的是博大精深,好多算法的设计都相当巧妙,学到了不少东西,在这里做个小小的总结,方便后续查阅. 文中关键词: 明文(P,Plaintext ...
- top、postop、scrolltop、offsetTop、scrollHeight、offsetHeight、clientHeight
1.top 此属性仅仅在对象的定位(position)属性被设置时可用.否则,此属性设置会被忽略 2.posTop posTop的数值其实和top是一样的,但区别在于,top固定了元素单位为px,而p ...
- P4715 淘汰赛 - 记录
P4715 淘汰赛 题目描述 有 2^n (n≤7) 个国家参加世界杯决赛圈且进入淘汰赛环节.我经知道各个国家的能力值,且都不相等.能力值高的国家和能力值低的国家踢比赛时高者获胜.1 号国家和 2 号 ...
- es6中的Proxy和vue中的数据代理的异同
1:概述 1-1:Proxy 用于修改某些操作的默认行为,Proxy可以说在对对象进行各种访问或者操作的时候在外层进行一层拦截,在操作之前都需要经过这种拦截.proxy返回的是一个新对象,可以通过操作 ...
- 用 Scanner 扫描CSV文件时报错:“java.util.nosuchelementexception:no line found”的解决方法
最近用 java 对一个很大的 CSV 文件进行处理.打算用 Scanner 逐行扫描进来,结果报错 "java.util.nosuchelementexception:no line fo ...