mysql表名不区分大小写&锁表

修改mysql表名不区分大小写

注意:如果数据库中已经有了大写的表名,该方法会使之前的大写表名无法识别。

打开配置文件
	 vim /etc/my.cnf(CentOS)
在文件中的[mysqld]下面添加或者修改参数:
	lower_case_table_names=1
重启mysql之后生效
	service mysqld restart(或者service mysql restart)

lower_case_table_names参数含义:

lower_case_table_names: 此参数不可以动态修改,必须重启数据库
lower_case_table_names = 1 表名存储在磁盘是小写的,但是比较的时候是不区分大小写
lower_case_table_names=0 表名存储为给定的大小和比较是区分大小写的
lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候是小写的

mysql锁表解决办法

注意如果插入中有报错:
Lock wait timeout exceeded; try restarting transaction
这就证明有锁表
可以select * from information_schema.innodb_trx;

在这里插入图片描述

找到上图的线程id,执行
kill 56;
即可将该锁表的线程kill掉;
发布了88 篇原创文章 · 获赞 58 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/qq_37636695/article/details/104297989