问题:修改msyql的my.ini文件后重启mysql服务,服务无法启动?
原因:修改mysql的my.ini文件后,重启服务,关闭了mysql服务,显示无法启动?
mysql配置文件my-default.ini my.ini修改后重启无效,原来是路径错了,记录一下:
windows操作系统下:
1. 由于我们使用MySql 时,需要修改mysql 的 my.ini 的配置文件。
2. 但是 mysql 5.7 的 my.ini 位置并不在 C:\Program Files\MySQL\MySQL Server 5.7 此目录的my-default.ini 并不是我们要的:
3. 如果安装在C盘的: 我们要进入 C:\ProgramData\MySQL\MySQL Server 5.7 此目录即可看到my.ini 此时你可以修改次配置啦!
————————————————
1、cmd关闭mysql所有进程
查询所有进程
tasklist| findstr "mysql"
杀死MySQL进程
taskkill/f /t /im mysqld.exe
2、打开my.ini文件后,选择文件另存为,重新另存为ANSI编码,然后覆盖原utf-8的编码文件。
3、cmd执行 net start mysql 即可
然后发现问题解决。服务已启动
方法二:打开电脑任务栏,结束mysql进程。
然后打开C:\ProgramData\MySQL\MySQL Server 5.7\my.ini
另存为:编码:ANSI格式
重起,MYSQL正常启动。
“引用”原来修改的内容:
修改/etc/my.ini文件
sql-mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
NO_ENGINE_SUBSTITUTION官方解释:
使用 ALTER TABLE或CREATE TABLE 指定 ENGINE 时, 需要的存储引擎被禁用或未编译,该如何处理。启用NO_ENGINE_SUBSTITUTION时,那么直接抛出错误;不设置此值时,CREATE用默认的存储引擎替代,ATLER不进行更改,并抛出一个 warning
再看下STRICT_TRANS_TABLES的官方解释:表示启用严格模式
再看看NO_AUTO_CREATE_USER:禁止GRANT创建密码为空的用户
问题原因: 主要是MySQL使用了严格验证方式
评论