示例

登录mysql

首先要登录到mysql,用下述指令:mysql -h localhost -u root -p -P 3306

查询当前状态

输入show variables like "max_connections";

mysql最大连接 mysql5.7设置最大连接数_默认值

修改配置文件

在文件/etc/my.cnf中设置Mysql 最大连接数

max_connections =900

重启mysql

systemctl restart mysqld.service

查询状态

输入show variables like "max_connections";

mysql最大连接 mysql5.7设置最大连接数_默认值_02

配置详解

max_connections

最大并发连接数。当MySQL的并发连接达到这个设定值时,新的连接将会被拒绝。当发现MySQL有能力处理更多的并发的时候, 建议调大这个值,相应给服务器带来更高的负载(CPU/IO/内存)。默认值:100  参考设置:900

back_log

TCP/IP连接队列的最大值。当MySQL同时有大量连接请求的时候,MySQL会尝试用当前现有的线程处理这些请求,如果处理不过来MySQL会把连接先放到一个队列里面,然后起新的线程处理。这个过程会很快,但是并发请求很多的话,需要调高这个值,否则新来的连接请求会被拒绝。在一次压测的时候发现客户端返回大量的“Lost connection to MySQL”, 就是因为back_log的默认值太小导致的。增大这个值会增大CPU负载并消耗更多的内存。默认值50, 参考设置200

skip-name-resolve

关闭反向域名解析。MySQL默认会对每个客户端连接作反向域名解析,强烈建议关闭反向域名解析。关闭的方法是在my.cnf里面加一行skip-name-resolve

innodb_file_per_table

独立表空间。共享表空间指某一个数据库的所有表数据、索引全部放在一个文件中,默认这个共享表空间的文件路径在data目录下,默认的文件名为ibdata1初始化为10M。独立表空间指每一个表都会生成独立的.frm表描述文件来存储,还有一个.ibd文件。其中这个文件包括了单独一个表的数据内容以及索引内容,默认情况下它的存储位置也是在表的位置之中。

如果使用innodb,强烈建议打开这个设置,否则所有的innodb表共享一个文件,并且这个文件的大小不会因为表数据的减少而减小,时间长了会把磁盘搞爆。

max_connect_errors

当客户端连接服务端超时(超过connect_timeout),服务端就会给这个客户端记录一次error,当出错的次数达到max_connect_errors的时候,这个客户端就会被锁定。除非执行FLUSH HOSTS命令。默认值10,参考设置1844674407370954751(能设多大,设多大)

connect_timeout

连接超时的秒数。默认值5,参考设置15

slave_net_timeout

MySQL主从复制的时候,当Master和Slave之间的网络中断,但是Master和Slave无法察觉的情况下(比如防火墙或者路由问题)。Slave会等待slave_net_timeout设置的秒数后,才能认为网络出现故障,然后才会重连并且追赶这段时间主库的数据。默认是3600秒,相信一个小时之后,黄花菜都凉了。默认值3600,参考设置30

lower_case_table_names

 忽略表名大小写,否则使用mycat时会报错 lower_case_table_names=1

wait_timeout

连接过期秒数。当一个连接sleep超过wait_timeout秒后,MySQL服务端会中断这个连接。这个值设置的过长有可能会导致大量的sleep链接占用系统资源,过小会导致“MySQL has gone away”的错误。默认值28800  不变

key_buffer

主键缓存。如果发现有大量的slow log,可以尝试调高这个值,相应会带来更高的内存开销。

table_cache

给经常访问的表分配的内存。调大这个值,一般情况下可以降低磁盘IO, 但是相应会占用更多的内存。

MyCat安装与配置

下载安装包

[root@master_150 ~]# wget http://dl.mycat.io/1.6.6.1/Mycat-server-1.6.6.1-release-20181031195535-linux.tar.gz

解压

[root@master_150 ~]# tar -zxvf Mycat-server-1.6.6.1-release-20181031195535-linux.tar.gz
[root@master_150 ~]# mv mycat /opt/mycat

配置环境变量

[root@master_150 ~]# vi /etc/profile
export MYCAT_HOME=/opt/mycat
export PATH=${MYCAT_HOME}/bin:$PATH

[root@master_150 ~]# source /etc/profile

未完待续

...

读写分离

敬请期待!

主从复制

敬请期待!