SQL Error:1146,SQLState:42S02 异常怎么解决?

SQL Error:1146,SQLState:42S02 异常怎么解决?,第1张

编辑MySQL安装目录下的my.ini文件,在[mysqld]节下 添加 lower_case_table_names=1

1、这个问题的根源在于,在 MySQL 中,数据库和表其实就是数据目录下的目录和文件,因而, *** 作系统的敏感性决定数据库和表命名的大小写敏感,这就意味着数据库和表名在 Windows 中是大小写不敏感的,而在大多数类型的 Unix/Linux 系统中是大小写敏感的。

2、MySQL大小写敏感可以通过配置文件的lower_case_table_names参数来控制WINDOWS编辑MySQL安装目录下的my.ini 文件,在[mysqld]节下 添加 lower_case_table_names=0 (备注:为0时大小写敏感,为1时大小写不敏感,默认为1),可以实现MySql按照建表Sql语句的大小写状态来定义表名。

3、LINUX编辑/etc/my.cnf文件,在[mysqld]节下 lower_case_table_names=1 参数,并设置相应的值 备注为0时大小写敏感,为1时大小写不敏感,默认为0。

一、数据库的系统表丢失了。

考虑以下几种处理方式:

a. 从其它相同版本的mysql数据库导出个proc的数据通过命令行导入进去;

b. 或者拷贝下data/mysql/proc.frm, proc.MYD, proc.MYI 三个文件到你的数据库data/mysql/ 目录下,重启数据库;

c. 如果之前有数据库备份,提取出其中的mysql.proc表来导入。

二、如果是从其它环境导入或拷贝的,数据库的存储过程会受影响,需重建所有数据库下的存储过程。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6910242.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-30
下一篇 2023-03-30

发表评论

登录后才能评论

评论列表(0条)

保存