MySql 报错集锦
MySql 报错集锦
雅冰石
DBA
展开
-
mysql主库delete一个没主键的表导致从库延迟很久问题处理
表没有主键的时候,delete很多数据,会导致从库出现很长时间延迟,因此需要严格把控,定期检查,确保主库上不存在没有主键的表。发现trx_query为空,以前线上从库出现延迟,能看到当前运行的sql的,不知为何这次看不到。因为上面已经在从库建过主键了,所以从库复制会停止,提示主键冲突,可以通过跳过这个事务来处理。#查看慢事务对应的进程id,注意别多杀了,只杀运行时间很久的,导致延迟的sql。如果没有主键,就需要先在从库上为这个表建下主键,先解决这个延迟的问题。只需要在从库执行以下命令就能跳过一个事务。原创 2024-04-27 19:17:20 · 1338 阅读 · 1 评论 -
Invalid default value for ddate
当给某个表加字段的时候,提示报错:Invalid default value for ddate查看了下这个表的表结构,发现ddate这个字段的定义是ddate datetime not null default '0000-00-00 00:00:00'原创 2023-05-19 10:36:36 · 486 阅读 · 0 评论 -
通过堡垒机执行nohup sh 脚本报错
写了一个往mysql里导数据的脚本(mysql -u root < sql文件这种方式),然后用nohup调用这个脚本,结果却报错: 将导数据脚本改成source这种方式(mysql -u root -e "source sql文件"也报错:使用screen。执行screen命令开启了一个新的窗口,在新的窗口里执行nohup 导数据的脚本,然后按ctrl+a+d退出该会话,后来看日志就没那个报错了--常用screen命令原创 2023-05-12 08:59:02 · 440 阅读 · 0 评论 -
Incorrect key file for table ‘pub_user_app_test‘; try to repair it
给表建索引的时候报了这个错:Incorrect key file for table 'pub_user_app_test'; try to repair itREPAIR TABLE pub_user_app_test我当时执行报错:The storage engine for the table doesn't support repair看了下这个表的存储引擎,是innodb,于是执行了如下sql得以修复:ALTER TABLE pub_user_app_test ENGINE=INNODB;原创 2023-04-13 16:45:22 · 166 阅读 · 0 评论 -
mysql/mariadb怎样生成core文件
mysql/mariadb怎样生成core文件转载 2022-07-07 16:03:14 · 364 阅读 · 0 评论 -
Data truncated for column ‘xxx‘
一 问题描述在mysql中创建主键报错。#sqlALTER TABLE t1 ADD PRIMARY KEY(id,NAME);Data truncated for column 'name' at row 3二 出错原因name存在空值三 解决办法将其设置为空,然后再次创建复合主键--本篇文章参考了MySQL中 Data truncated for column 'xxx'解决方法_weixin_30316097的博客-CSDN博客...转载 2022-04-13 10:40:25 · 1152 阅读 · 0 评论 -
load data infile报错data too long for column
一 问题描述用select * from tqms.test_paper into outfile '/var/lib/mysql/test_paper.txt'导出再用load data infile '/var/lib/mysql/test_paper.txt' into table tqms.test_paper导入的时候报错:load data infile报错data too long for column id二 解决办法加上FIELDS TERMINATED BY ','原创 2022-01-26 09:31:06 · 1299 阅读 · 0 评论 -
1114 - The table t1 is full
一 问题描述往一个memory引擎的表插入数据报错:1114 - The table t1 is full。二 出错原因内存表的最大总大小不能超过max_heap_table_size系统服务器变量。设置这个变量不影响任何现有的内存表,除非表被重新创建或者用ALTER TABLE engine=memory或TRUNCATE TABLE修改。此外,还可以在创建表之前更改max_heap_table_size的会话值,以确保其他会话创建的表不受影响。三 解决办法① 调大tmp_原创 2022-01-12 14:02:48 · 347 阅读 · 0 评论 -
ERROR 1261 (01000): Row 1 doesn‘t contain data for all columns
一 问题描述MariaDB [baidd]> select * from t1 into outfile '/var/lib/mysql/t1.txt';Query OK, 1 row affected (0.000 secMariaDB [baidd]> load data infile '/var/lib/mysql/t1.txt' into table t2;ERROR 1261 (01000): Row 1 doesn't contain data for all co...原创 2021-12-03 11:16:26 · 2609 阅读 · 0 评论 -
operation create user failed
一 问题描述同事反馈执行创建用户报错。sql:CREATE USER nrms@'%' IDENTIFIED BY '密码';报错:operation create user failed二 出错原因之前用delete方式删除过该用户,因此无法再使用create user这种方式创建用户三 解决办法#使用drop user删除,再create userMariaDB [(none)]> drop user nrms@'%';Query OK, 0 rows a转载 2021-11-29 15:27:39 · 2852 阅读 · 0 评论 -
HHost ‘192.168.144.249‘ is not allowed to connect to this MySQL serverConnection closed by foreign h
一 问题描述安装完mysql后,telnet数据库端口,却报错:二 出错原因没有创建远程账号三 解决办法grant all privileges on *.* to 'root'@'%' identified by '密码';转载 2021-11-09 19:15:55 · 464 阅读 · 0 评论 -
ERROR: Could not read entry at offset 946675767: Error in log format or read error.
一 问题描述查看binlog里内容,发现无法正常查看:mysqlbinlog --no-defaults -v master-bin.000543 > baidd_543.log报错:ERROR: Error in Log_event::read_log_event(): 'Event truncated', data_len: 1413827653, event_type: 109ERROR: Could not read entry at offset 946675767: Er原创 2021-09-29 11:43:36 · 745 阅读 · 0 评论 -
Last_SQL_Error: Relay log read failure: Could not parse relay log event entry. The possible reasons
一 问题描述机房搬迁后启动从库,数据库起来了,但是从库复制报错:mysql> show slave status \G;*************************** 1. row *************************** Slave_IO_State: Master_Host: 172.16.28.90 Master_User: rep_sa转载 2021-08-20 14:00:25 · 1341 阅读 · 0 评论 -
ERROR 1548 (HY000): Cannot load from mysql.proc. The table is probably corrupted
一 问题描述往一个5.5.29版本的mysql数据库的普通表里插入数据时,报错:ERROR 1548 (HY000): Cannot load from mysql.proc. The table is probably corrupted我repair table后也不管用。二 出错原因数据库估计最近升级过版本。在5.1中mysql.proc表的comment字段是char(64):,但在5.5中应该是text三 解决办法修改comment数据类型为text。先看下现有原创 2021-03-23 17:51:39 · 581 阅读 · 0 评论 -
Mysql mysql lost connection to server during query 问题解决方法
缘由: 在查询Mysql中的数据库,或者修改比较大的表的时候就会出现这种情况;google之:方案1.在mysql配置文件[myslqd]下面添加一行设置skip-name-resolve.需要重启mysql服务. 方案2.在hosts文件内添加: ip与主机名的映射关系,如: 127.0.0.1 localhost. 这种方式不用重启mysql服务.-------------转载 2016-09-29 14:15:18 · 13836 阅读 · 0 评论 -
MYSQL5.5修改字符集报错:unknown variable 'default-character-set=utf8'
今天在修改MYSQL字符集的时候启动报错:unknown variable 'default-character-set=utf8'看来是default-character-set=utf8这个设置项惹得祸....因为MYSQL 5.5修改了字符集设置参数应该改成:用character_set_server=utf8 取代default-转载 2016-08-08 12:01:22 · 5392 阅读 · 1 评论 -
mysql中文乱码解决方案
一 问题描述当往表里插入中文数据时,报错:mysql> insert into t(id,nam) values(1,'丹丹');ERROR 1366 (HY000): Incorrect string value:'\xE4\xB8\xB9\xE4\xB8\xB9' for column 'nam' at row 1二 出错原因该表或者列的字符集与当前连接的字符集不同导致。原创 2016-12-07 14:38:48 · 1833 阅读 · 0 评论 -
Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Slave can not h
一:问题描述在做mysql版本升级实验时,将5.5.19的从库指向5.6.33的主库,slave slave后,查看slave状态,发现报错:mysql> show slave status \G;*************************** 1. row *************************** Slave_IO_State:原创 2016-11-24 14:40:19 · 4278 阅读 · 4 评论 -
ERROR 1142 (42000) at line 6688: SELECT, LOCK TABLES command denied to user 'root'@'localhost' for t
[root@slave2 bak]# mysql -u root -psystem@123 Warning: Using a password on the command line interface can be insecure.ERROR 1142 (42000) at line 6688: SELECT, LOCK TABLES command denied to user 'r原创 2016-12-06 15:57:34 · 4204 阅读 · 0 评论 -
MySQL备份时排除指定数据库
使用mysqldump命令备份时候,--all-databases 可以备份所有的数据库。 使用ignore-table 还可以排除制定的表。但是,mysqldump没有参数可以排除数据库的。要备份的数据库少的时候,可以通过mysqldump -uroot -p123456 --databases db1 db2 db3 > mysqldump.sql 这样来备份。但是假如数据库有数十个的转载 2016-12-06 15:02:28 · 4832 阅读 · 0 评论 -
'mysqld_safe' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
忘记root密码了,想修改下密码,结果报错:原创 2016-12-02 09:55:32 · 27390 阅读 · 2 评论 -
windows下安装Mysql 5.6(zip格式安装包)
5.6的安装包是一个zip文件,里面包含了data(有表空间文件和日志文件),bin等文件夹。不同于以往的只需要双击安装.msi就行了。因此,在此记录下安装包是.zip时的安装步骤。1 下载进http://downloads.mysql.com/archives/community/下载下载完成后,将其解压到要安装的路径下。这里是:E:\mysql-5.6.31-winx...原创 2016-08-15 13:27:14 · 13012 阅读 · 0 评论 -
[ERROR] Could not create unix socket lock file /var/run/mysql/mysql.sock.lock
在日志文件 /var/log/mysql/error.log 中可以看到具体的ERROR 信息:Could not create unix socket lock file /var/run/mysql/mysql.sock.lock。这种错误一般都是目录不存在或者权限不足,所以我们直接使用命令 mkdir -p /var/log/mysql/ 创建该目录即可,然后可以设置目录权限 cho转载 2016-04-03 20:41:30 · 43813 阅读 · 5 评论 -
mysqlslap压力测试
Mysqlslap是从5.1.4版开始的一个MySQL官方提供的压力测试工具。通过模拟多个并发客户端访问MySQL来执行压力测试,同时详细的提供了“高负荷攻击MySQL”的数据性能报告。并且能很好的对比多个存储引擎在相同环境下的并发压力性能差别。 --concurrency代表并发数量,多个可以用逗号隔开,concurrency=10,50,100,并发连接线程数分别是10、50、100个原创 2016-04-22 14:05:49 · 1072 阅读 · 0 评论 -
wait_timeout与interactive_timeout
1)interactive_timeout:参数含义:服务器关闭交互式连接前等待活动的秒数。交互式客户端定义为在mysql_real_connect()中使用CLIENT_INTERACTIVE选项的客户端。参数默认值:28800秒(8小时)(2)wait_timeout:参数含义:服务器关闭非交互连接之前等待活动的秒数。在线程启动时,根据全局wait_timeout值或全转载 2016-06-30 17:35:06 · 2387 阅读 · 0 评论 -
mysql中max_allowed_packet参数的配置方法(避免大数据写入或者更新失败)
MySQL根据配置文件会限制Server接受的数据包大小。有时候大的插入和更新会受 max_allowed_packet 参数限制,导致写入或者更新失败。查看目前配置:代码如下:show VARIABLES like '%max_allowed_packet%';显示的结果为:代码如下:+--------------------+---------+| Va转载 2016-10-14 10:41:45 · 20671 阅读 · 0 评论 -
- Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.
[root@localhost ~]# mysqldump --all-databases --single-transaction --master-data=1 --flush-logs --result-file=dump.sql -S /tmp/mysql3306.sock-- Warning: Skipping the data of table MySQL.event. Spec转载 2016-11-26 15:16:26 · 3312 阅读 · 0 评论 -
binlog日志太多太大耗尽磁盘空间导致mysql卡死的问题解决
一:问题描述今天有同事反馈,数据库卡死了,普通的一个带limit 1只反馈一条记录的查询都好久查不出来。我查了一下,当前并没有阻塞信息,所以不是锁竞争导致的。查看错误日志,看到了端倪:160419 17:03:33 [ERROR]/usr/local/mysql/bin/mysqld: Disk is full writing './mysql-bin.000177'(Errcod...原创 2016-04-20 12:54:39 · 8233 阅读 · 0 评论 -
dbvis MySQL server version for the right syntax to use near 'OPTION SQL_SELECT_LIMIT=DEFAULT' at lin
今天使用数据库查询工具DBvis链接mysql数据库时, 发现执行如何sql语句, 都报如下错误:后来想着应该是mysql驱动包的版本不对导致的, 如何你和我一样, 也是这个问题困扰,那么现在就知道怎么回事了。 我的版本如下:解决办法:去mysql官网下载最新的jar驱动包 然后更新就行.url:http://dev.mysql.com/do转载 2016-11-28 13:24:29 · 2196 阅读 · 0 评论 -
Starting MySQL...The server quit without updating PID file (/usr/local/mysql/data/rekfan.pid)
启动mysql服务时,报错:Starting MySQL...The server quit without updating PID file (/usr/local/mysql/data/rekfan.pid)。1.可能是/usr/local/mysql/data/rekfan.pid文件没有写的权限解决方法 :给予权限,执行 “chown -R mys转载 2015-03-25 17:13:27 · 2224 阅读 · 0 评论 -
Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '=
[sql] view plain copySELECT a.equ_no, b.fullCode FROM equipment a, ( SELECT t.*, getEquTypeFullCode (t.equType_id) AS fullCode转载 2017-07-18 11:13:55 · 999 阅读 · 0 评论 -
ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that supp
解决办法:先通过跳过授权表的方式启动数据库:mysqld_safe --user=mysql--datadir=/data/mysql --skip-grant-tables --skip-networking &这样就可以免密码登录了。然后修改该用户密码过期策略为N:update user set password_expired="N" where user="root转载 2017-06-13 17:32:55 · 3667 阅读 · 0 评论 -
[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
前几天我把自己测试机器的mysql data目录下的文件全删除了。启动数据库报错:[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist解决办法:运行mysql_install_db。如:/usr/local/mysql/scripts/mys转载 2017-07-11 10:34:49 · 830 阅读 · 0 评论 -
ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found 43. Created with MySQL 5
错误是由于你曾经升级过数据库,升级完后没有使用mysql_upgrade升级数据结构造成的。解决办法:使用mysql_upgrade命令mysql_upgrade -u root -p --本篇文章转自:http://blog.csdn.net/qq_33350186/article/details/72528810转载 2017-06-19 15:06:44 · 6390 阅读 · 2 评论 -
Error Code: 1406 Data too long for column 'content' at row 1
一:问题描述今天有同事反馈往一个text数据类型的列上插入数据时,插入失败。示例:INSERT INTO t(ftime,content) VALUES(SYSDATE(),REPEAT('你好',20000))二:出错原因① sql_mode包含STRICT_TRANS_TABLES配置 当要插入的数据跟列的数据类型不匹配或者要插入的数据比数据类型大,会被...原创 2019-09-18 15:51:37 · 7991 阅读 · 1 评论 -
ERROR 1146 (42S02): Table 'eip_fileservice.t_document_file' doesn't exist
一:问题描述mysql> select * from T_DOCUMENT_FILE limit 2;ERROR 1146 (42S02): Table 'eip_fileservice.t_document_file' doesn't exist二:出错原因这是因为配置文件里变量lower_case_table_names = 1导致的。参数表名原本是大写,在查询时,却被原创 2017-02-25 22:23:49 · 2143 阅读 · 0 评论 -
Client requested master to start replication from impossible position; the last event was read from
一:问题描述由于10.0.3.96此虚拟机所在的物理机存储不够了,所以上面的数据库也无法访问了。后来10.0.3.96可以正常访问后,其从库10.0.3.97却发生了异常:mysql> show slave status \G;*************************** 1. row ***************************原创 2017-02-24 15:09:45 · 2451 阅读 · 0 评论 -
Linux主机名修改后导致mysql重启失败
今天发现生产环境的主机名被修改了。现在查看mysql状态,报错:[root@db02 ~]# service mysqld statusMySQL is running but PID file could not be found [FAILED]停止mysql也报错:[root@db02 ~]# service mysqld stopMySQL se原创 2017-02-04 15:25:51 · 2109 阅读 · 0 评论 -
ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting B
项目一直用的oracle数据库运行都正常,后来由于某种原因需要更换成MySQL,更改好配置后直接运行项目有hibernate自动建表结果看到控台日志中有个错误:ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 6转载 2015-08-03 15:49:05 · 29509 阅读 · 2 评论 -
ERROR 1045 (28000): Access denied for user ‘aa‘@‘localhost‘ to database dd
一:问题描述mysql> grant select on *.* to 'jiao';ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)二:出错原因该用户没有授权权限三:解决办法mysql> update mysql.user set Grant_Priv='原创 2016-12-14 15:53:27 · 3359 阅读 · 0 评论