MySQL表不能修改、删除等操作,卡死、锁死情况的处理办法。 show full processlist
[ 2021-04-15 14:22:58 | 作者: admin ]
MySQL如果频繁的修改一个表的数据,那么这么表会被锁死。造成假死现象。
解决办法:
首先执行:show full processlist; 列出当前的操作process,一般会看到很多waiting的process,说明已经有卡住的proces了,我们要杀死这些process!!
再执行:kill processid; processid表示process的id,比如kill 3301,就会将id为3301的process杀死。
使用 kill 将所有的 id 杀死。然后重启MySQL,一般就会解决了。如果还不行,那应该是不可能的吧。。。
一般情况下都不需要重启MySQL:
net stop mysql //停止MySQL
...
阅读全文…
解决办法:
首先执行:show full processlist; 列出当前的操作process,一般会看到很多waiting的process,说明已经有卡住的proces了,我们要杀死这些process!!
show full processlist;
再执行:kill processid; processid表示process的id,比如kill 3301,就会将id为3301的process杀死。
kill processid;
使用 kill 将所有的 id 杀死。然后重启MySQL,一般就会解决了。如果还不行,那应该是不可能的吧。。。
一般情况下都不需要重启MySQL:
net stop mysql //停止MySQL
...
阅读全文…
强制mysql服务器更新日志
[ 2020-08-26 15:20:43 | 作者: admin ]
经常命令运行了,但是日志没有实时记录下来,用下面命令强制刷新日志
mysqladmin –u root –p flush-logs
win7下安装mysql报错5.7.13-Table 'mysql.user' doesn't existFor more information
[ 2020-05-09 19:01:21 | 作者: admin ]
用管理员身份打开cmd.exe,进到mysql的bin目录
D:\Program Files\mysql-5.7.13\bin>mysqld install
Service successfully installed.
D:\Program Files\mysql-5.7.13\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务无法启动。
服务没有报告任何错误。
请键入 NET HELPMSG 3534 以获得更多的帮助。
报错了,打开系统日志提示:
Fatal error: Can’t open and lock privilege tables: Table ‘mysql.user’ doesn’t existFor more information, see Help and Support Center at
...
阅读全文…
D:\Program Files\mysql-5.7.13\bin>mysqld install
Service successfully installed.
D:\Program Files\mysql-5.7.13\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务无法启动。
服务没有报告任何错误。
请键入 NET HELPMSG 3534 以获得更多的帮助。
报错了,打开系统日志提示:
Fatal error: Can’t open and lock privilege tables: Table ‘mysql.user’ doesn’t existFor more information, see Help and Support Center at
...
阅读全文…
mysql语句中union和union all 的区别,合并查询结果集
[ 2020-04-14 13:32:16 | 作者: admin ]
问题:mysql语句中union和union all 的区别
答案:union会过滤掉两个结果集中重复的行,而union all不会过滤掉重复行。
注意事项:union不能与order by 合用,需要在数组中重新排序下
范例:
答案:union会过滤掉两个结果集中重复的行,而union all不会过滤掉重复行。
注意事项:union不能与order by 合用,需要在数组中重新排序下
范例:
SELECT aid,title FROM article UNION ALL SELECT bid,title FROM blog
mysql中 VARCHAR(N)类型,GBK编码,utf8编码,则N最大值,字符串长度问题
[ 2019-12-12 10:37:30 | 作者: admin ]
p.s. 在mysql5中,varchar(20)就表示可以放20个字(数字英文或汉字),无论编码是UTF8,GBK,都可以放20个。mysql会自动分配存储字节空间
如果是汉字,GBK编码下1汉字=2byte, varchar(20)会占用40字节,UTF8编码1汉字=3byte, varchar(20)会占用60字节,UTF8mb4编码1汉字=4byte, varchar(20)会占用80字节
有道面试题:若一张表中只有一个字段VARCHAR(N)类型,utf8编码,则N最大值为多少?
先明白计算的一些规则限制
mysql 4.0版本以下,varchar(20),指的是20字节,如果存放UTF8汉字时,只能存6个(每个汉字3字节)
mysql 5.0版本以上,varchar(20),指的是20字符,无论存放的是数字、字母还是U...
阅读全文…
如果是汉字,GBK编码下1汉字=2byte, varchar(20)会占用40字节,UTF8编码1汉字=3byte, varchar(20)会占用60字节,UTF8mb4编码1汉字=4byte, varchar(20)会占用80字节
有道面试题:若一张表中只有一个字段VARCHAR(N)类型,utf8编码,则N最大值为多少?
先明白计算的一些规则限制
mysql 4.0版本以下,varchar(20),指的是20字节,如果存放UTF8汉字时,只能存6个(每个汉字3字节)
mysql 5.0版本以上,varchar(20),指的是20字符,无论存放的是数字、字母还是U...
阅读全文…
mysqli_connect()函数
[ 2019-08-22 17:32:35 | 作者: admin ]
今天改旧程序到mysqli,
查资料才意识到,mysqli_connect() 是把端口作为第5个参数单独列出的,OMG,不记函数的下场就是浪费时间
阅读全文…
mysqli_connect( "localhost:9999",$username,$pwd,$dbname );
然后一直提示mysqli_connect HY000/2005 Unknown MySQL server host localhost:9999
查资料才意识到,mysqli_connect() 是把端口作为第5个参数单独列出的,OMG,不记函数的下场就是浪费时间
mysqli_connect ([ string $host = ini_get("mysqli.default_host") [, string $username = ini_get("mysqli.default_user") [, string $passwd = ini_get("mysqli.default_pw")
...阅读全文…
SQL语句问题,LEFT JOIN 右表多条数据解决方案
[ 2019-08-14 16:13:18 | 作者: admin ]
p.s. 方法就是先写好普通left join语句,然后把结果作为临时表,进行group by [重复键]
用到SQL中的LEFT JOIN时,在右表中存在多条记录,即一对多的情况时, 直接使用left join会出现一对多的结果
发现一对多关联然后全部查询出来了。
现在只需要改查询商品的最后一张图片,入商品1对应的商品图片3。
方案1:
先按图片降序排序,然后按商品id进行分组,即得每一个商品的最后一张图片信息。
阅读全文…
select * from (
原语句...
) as tmp_table GROUP BY tmp_table.mid
原语句...
) as tmp_table GROUP BY tmp_table.mid
用到SQL中的LEFT JOIN时,在右表中存在多条记录,即一对多的情况时, 直接使用left join会出现一对多的结果
发现一对多关联然后全部查询出来了。
现在只需要改查询商品的最后一张图片,入商品1对应的商品图片3。
方案1:
先按图片降序排序,然后按商品id进行分组,即得每一个商品的最后一张图片信息。
SELECT * FROM
...阅读全文…
MYSQL之数据结构修改----MySQL大数据表结构更改手记
[ 2018-09-05 16:17:21 | 作者: admin ]
核心表 2亿多数据量,索引+数据大小超80G,需要对该表结构作调整——drop两字段,然后新增5字段
在测试服务器上测试drop 两个字段,花费了30多分钟,并且内存占用率持续99.9%,其中3个cpu core占用80%以上(硬件16核,50G内存);虽然两列是drop掉了,但这么长的时间难以接受,基于此查看了官方文档中表结构修改处理流程以查找 更佳解决办法:
http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html#alter-table
以下为原文引用:
“ALTER TABLE运行时会对原表进行临时复制,在副本上进行更改,然后删除原表,再对新表进行重命名。在执行ALTER TABLE时,其它用户可以阅读原表,但是对表的更新和修改的操作将被延迟,直到新表生成为止。新表生成后,这些更新和修改信息会自动转移到新表上。
注意,如果您在执行ALTER...
阅读全文…
在测试服务器上测试drop 两个字段,花费了30多分钟,并且内存占用率持续99.9%,其中3个cpu core占用80%以上(硬件16核,50G内存);虽然两列是drop掉了,但这么长的时间难以接受,基于此查看了官方文档中表结构修改处理流程以查找 更佳解决办法:
http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html#alter-table
以下为原文引用:
“ALTER TABLE运行时会对原表进行临时复制,在副本上进行更改,然后删除原表,再对新表进行重命名。在执行ALTER TABLE时,其它用户可以阅读原表,但是对表的更新和修改的操作将被延迟,直到新表生成为止。新表生成后,这些更新和修改信息会自动转移到新表上。
注意,如果您在执行ALTER
阅读全文…