前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL case几例

MySQL case几例

作者头像
DBA札记
发布2022-08-16 14:02:31
7940
发布2022-08-16 14:02:31
举报
文章被收录于专栏:MySQL参数系列MySQL参数系列

一、修改innodb_log_file_size报错

5.5版本要求小于4G

5.5版本库 修改innodb_log_file_size 需要mv 走原来的iblogfile

二、1418错误

MySQL This function has none of DETERMINISTIC, NO SQL...错误1418 的原因分析及解决方法 (转)

解决方法:

解决办法也有两种, 第一种是在创建子程序(存储过程、函数、触发器)时,声明为DETERMINISTIC或NO SQL与READS SQL DATA中的一个, 例如: CREATE DEFINER = CURRENT_USER PROCEDURE `NewProc`() DETERMINISTIC BEGIN #Routine body goes here... END;;

第二种是信任子程序的创建者,禁止创建、修改子程序时对SUPER权限的要求,设置log_bin_trust_routine_creators全局系统变量为1。

设置方法有三种:

1.动态配置:SET GLOBAL log_bin_trust_function_creators = 1;

2.MySQL启动时,加上--log-bin-trust-function-creators选项,参数设置为1

3.在MySQL配置文件my.ini或my.cnf中的[mysqld]段上加log-bin-trust-function-creators=1

三、问题:Specified key was too long; max key length is 767 bytes ErrorCode

业务反馈某建表sql语句执行报错:

报错信息:Specified key was too long; max key length is 767 bytes ErrorCode

解决方法:初步定位是innodb-large-prefix参数问题。查看数据库版本,生产版本为5.6.25,其参数默认是OFF的。是导致这个问题的原因。

根据官方文档,该参数是5.6.3引进,在5.7.7之前是默认OFF,之后是默认ON。

根据文档信息,动态修改线上从库→主库,即生效。然后修改主从配置文件。

修改命令:set global innodb_large_prefix=on;

四、操作系统文件数限制

1、调整系统open files:

vim /etc/security/limits.conf

* soft nofile 1048576

* hard nofile 1048576

验证是否生效:重新登录机器,然后执行:ulimit -n

文件数超出后mysql报错:

五、MySQL启动相关

1、mysqld 错误日志

2、journalctl -xe Systemd日志

3、/var/log/messages系统日志

4、/var/log/audit/audit.log 审计日志 selinux相关

5、/usr/local/mysql/bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory

解决方案:

代码语言:javascript
复制
yum remove libnuma.so.1
yum -y install numactl.x86_64

六、统计信息不准

问题:datacenter中的某个查询,从原来的2s多到700s以上,导致页面无法显示数据。

原因:统计信息不准导致

解决方案:1、在线调参数

set global information_schema_stats_expiry=10;

2、整理表

ANALYZE NO_WRITE_TO_BINLOG table xxx;

本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-03-21,如有侵权请联系?cloudcommunity@tencent.com 删除

本文分享自 DBA札记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com