十一(1)、MySQL遇到的问题

本文列举了在使用MySQL过程中遇到的一些问题及相应的解决方法,包括从dump文件导入表结构报错、MySQL内存消耗过大、服务器退出PID文件问题、权限授予错误、主从复制配置、优化问题以及jdbc连接错误等,并提供了相关参考链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、从dump文件中导入表结构报错:

ERROR 1840 (HY000) at line 24: @@GLOBAL.GTID_PURGED can only be set when @@GLOBAL.GTID_EXECUTED is empty.

https://www.cnblogs.com/tonnytangy/p/7779164.html

2、参数优化:mysql内存消耗过大的情况
查看了两个mysql各自的my.cnf,发现innodb_buffer_pool_size为16G的消耗内存大,为2G的消耗小

测试:
在虚拟机上的Mysql,初始innodb_buffer_pool_size=134217728,即100多M
在这里插入图片描述

重新设置为:set global innodb_buffer_pool_size
512M————>内存没什么变化 3.69G的把内存消耗了365M
2048M————>内存消耗9%,498M
5G——————>内存消耗16.3%,768M

3、转MySQL提示:The server quit without updating PID file问题
发现是在/etc目录下的my.cnf问题,去掉这个文件就正常了。可能是由于我安装的是mariadb的原因

4、用一个账号登录mysql,执行SHOW MASTER STATUS;的时候,报错:

pid:29 nid:1 exception:canal:test01:com.alibaba.otter.canal.parse.exception.CanalParseException: command : 'show master status' has an error!
Caused by: java.io.IOException: ErrorPacket [errorNumber=1227, fieldCount=-1, message=Access denied; you need (at least one of) the SUPER,REPLICATION CLIENT privilege(s) for this operation, sqlState=42000, sqlStateMarker=#]

解决办法:给该账号赋予缺失的权限
但是这是涉及到主从复制,这个权限属于全局的,所以不能只作用于一个数据库,例如:
grant REPLICATION CLIENT ON otter01.* TO ‘jenny’@’%’;
就会报错:ERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES
正确的为:
grant REPLICATION CLIENT ON . TO ‘jenny’@’%’;
flush privileges;
参考:https://www.cnblogs.com/tianshupei88/p/5075367.html
但是赋权之后还是报错,解决办法:
参考:https://blog.csdn.net/my201110lc/article/details/77864202
1)看到文件名是my-default.ini,里面也配置了
2)log-bin=mysql-bin #添加这一行就ok
3)binlog-format=ROW #选择row模式
4)server_id=1 #配置mysql replaction需要定义,不能和canal的slaveId重复

5、mysql优化遇到的问题

在这里插入图片描述

6、mysqlbinlog: [ERROR] unknown variable 'default_character_set=utf8mb4
解决办法:加入参数–no-defaults,例如:用mysqlbinlog --no-defaults mysql-bin.000001 命令执行

7、代码里面调jdbc,报错:

Establishing SSL connection without server's identity verification is not recommended.

解决办法:jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值