遇到的问题:
1. MySQL service 已经安装成功,创建了空的data文件夹,也填了初始化ini文件,但是无法启动
2. cmd 执行指令 “mysql -uroot -p” 时提示:“ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)”
3. Windows服务管理启动MySQL服务时提示:“本地计算机 上的 MySQL 服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。”
4. mysql 日志文件提示:“2016-07-12T08:14:12.661749Z 0 [Note] Plugin 'FEDERATED' is disabled. MySQL: Table 'mysql.plugin' doesn't exist”
解决问题:
其实这几个问题都是因为mysql 的初始化ini文件不正确导致,请注意以下几点
本人遇到的是问题:1、4启动不起来,但是不报具体错误;
部署的步骤就是按照网上说的:
1:修改环境变量path,增加值C:\Program Files\mysql-5.7.17-winX64\bin
2:修改my-default.ini,重命名为my.ini,修改文件内容:
1
2
|
# basedir = C:\Program Files\mysql-5.7.17-winX64
# datadir = C:\Program Files\mysql-5.7.17-winX64\data
|
在主目录“C:\Program Files\mysql-5.7.17-winX64”下创建空的data文件夹;
3:管理员运行cmd,输入:mysqld -install,显示安装成功;再输入:net start mysql,提示启动服务失败,
此时:到data文件夹下看到5个文件,打开后缀为.err的文件,里面提示:Table 'mysql.plugin' doesn't exist
针对这个问题的解决方案是:
1.把my.ini复制到\bin文件夹下;
2.在cmd到\bin目录,然后输入mysqld --initialize --user=mysql --console 执行此命令, 生成库. 注意有个临时密码, 要记下来;
过程中报错的话,在控制台,可以找到具体的错误配置原因;
3.启动服务net start mysql;
4.进入mysql命令下:mysql -uroot -p,输入刚刚的密码;
5.再输入set password = password('root') 修改root的登录密码;
注意:本人用的是5.8,这样设置会报错;因为5.8的表结构与之前的不一致;没有password字段
所以我执行了set password = ''
启动成功后,然后做授权密码修改、远程访问
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NE
VER;
Query OK, 0 rows affected (0.12 sec)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '
root';
Query OK, 0 rows affected (0.07 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.05 sec)