我已经使用yum在linux中安装了mysql v5.5.17,现在我想要默认的小写表名,所以我添加了
set-variable = lower_case_table_names=1
在
/etc/my.cnf
但如果我这样做,那么我无法启动mysqld服务。 Mysql日志表示未知变量lower_case_table_names
。
我也尝试在命令行中使用set global lower_case_table_names=1;
,但是说它是只读变量。
有什么建议吗?
答案 0 :(得分:19)
我的OP系统是ubuntu, Mysql版本 5.5。*
更新文件/etc/mysql/my.cnf
,(必须在[mysqld]
部分
[mysqld]
lower_case_table_names=1
然后重启mysql
答案 1 :(得分:7)
在5.5中我们需要指定
lower_case_table_names=1
答案 2 :(得分:0)
Step1:使用sudo systemctl stop mysqld停止mysql服务; 步骤 2:从 /var/lib 备份 mysql 文件夹 Step3:删除/var/lib/mysql文件夹 Step4:在/etc/my.cnf中修改lower_case_table_names=1 Step5:再次使用 sudo systemctl start mysqld
启动mysqld.service如果 mysql -u root -p 的 root 密码不起作用,请按照以下步骤操作:
编辑 /etc/my.cnf 文件 在 [mysqld] 下添加 skip-grant-tables 重启你的 MySQL 服务器 您现在应该可以使用以下命令登录到 mysql mysql -u root -p 运行刷新权限;在 MySQL shell 中 使用 ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘your_new_password’设置新密码; 编辑 /etc/my.cnf 并删除 skip-grant-tables 行 再次重启 MySQL 现在您可以使用 mysql -u root -p
使用新的 MySQL 密码登录