8.mysql 常用配置

1.max_allowed_packet:服务端接收最大数据包

此参数限制Server接受的数据包大小,默认是1M也有版本默认是4M,如果插入的数据超过这个量大小就会报错。

报错内容大致如下:

Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1314 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.

配置修改方式:

1.配置文件修改

在my.cnf配置文件的[mysqld]段或者mysql的server配置段进行修改

max_allowed_packet = 20M

2.命令修改

注意命令修改在服务重启后会失效

set global max_allowed_packet = 2*1024*1024*10

2.lower_case_table_names:对表名大小写不敏感

说明是否数据目录所在的文件系统对文件名的大小写敏感。1说明对文件名的大小写不敏感,0表示敏感,2表示把大写转换为小写去查询。默认情况下windows系统上是1,linux上是0,macOS是2。为了简单处理直接把表名称设置为小写加下划线,把这个参数设置为1。

如果因为大小写不一致会导致mysql报指定表不存在的错误:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'test.xxx' doesn't exist

配置修改方式:在my.cnf配置文件的[mysqld]段修改配置的值为1

 lower_case_table_names=1

3.character-set-server:sql服务的字符集

如果想varchar类型的列插入表情字符可能会报如下错误:

java.sql.SQLException: Incorrect string value: '\xF0\x9F\x92\x94' for column 'name' at row 1 

报错的内容是当前列的字符集不支持这种类型的字符串,原因是列的字符集有问题,解决办法就是把列的字符集修改为utf8mb4

[mysqld]
character-set-server=utf8mb4
[mysql]
default-character-set=utf8mb4

4.skip-name-resolve:跳过对连接的客户端进行DNS反向解析

如果没有配置这个参数,可能会导致mysql连接很慢,查看下进程,发现有很多这样的连接:

218 | unauthenticated user | 192.168.10.6:44500 | NULL  | Connect | NULL | login | NULL
219 | unauthenticated user | 192.168.10.6:44501 | NULL  | Connect | NULL | login | NULL  

同时,‘t1’@‘127.0.0.1’会转化为’t1’@‘localhost’登录,此时’t1’@’%‘定义的密码并不适用,因为它走的是hostname验证,如果配置了这个参数的话,则’t1’@’%‘中定义的密码可用于’t1’@'127.0.0.1’的登录。

配置方式

在my.cnf配置文件里面添加如下配置,然后重启服务生效

[mysqld]
skip-name-resolve

5.log-error 错误文件输出位置

log-error = C:/AppServ/MySQL/logs/err.err

6.log 日志文件输出位置

log = C:/AppServ/MySQL/logs/query_log.log

7.log-slow-queries 慢查询日志文件输出位置

log-slow-queries = C:/AppServ/MySQL/logs/slow_log.log
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值