这个是初始化文件,可能是下载文件时损坏了。
需要按照如下步骤修复:
重新下载mysql;
2. 解压缩文件;
3. 添加path环境变量,路径指向mysql所在bin目录下;
4. 在主目录下创建data文件夹;
5. 注册windows系统服务;
6.新建一个my.ini文件,拷贝到c:\windows目录下,内容如下:
[client]port=3306
default-character-set=utf8
[mysqld]
# 设置为MYSQL的安装目录
basedir=C:\_04Tools\mysql-5.7.18-winx64
# 设置为MYSQL的数据目录
datadir=C:\_04Tools\mysql-5.7.18-winx64\data
port=3306
character_set_server=utf8
sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER
#开启查询缓存
explicit_defaults_for_timestamp=true
7.打开cm的,进入mysql bin目录下,输入服务安装命令:
mysqld -install如果出现Install/Remove of the Service Denied!,进入 C:\Window\System32 找到CMD.EXE 右键选择 以管理员身份 进行,再进入相应目录执行命令,一切就OK了。
8. 启动MySQL服务
命令:net start mysql。若报错,在data目录下找.rr文件查看具体错误信息。修复错误后记得将data目录下内容清空。若上述命令依然不成功可尝试 mysqld --initilize --user=mysql --datadir=data。
9. 修改root密码
set password for root@localhost = password('123')
修改密码成功后登录:mysql -u root -p, 输入password
重启服务后再次登录,成功。
方法/步骤
1
压缩包安装方式
从官网上下载mysql-5.7.18-winx64.zip,将其解压,接下来的安装是通过命令来安装MySQL数据库的。
(1)mysql-5.7.18-winx64.zip解压到D:\文件下,解压目录如下:
(2)配置环境变量
编辑path系统变量,将%MYSQL_HOME%\bin添加到path变量后,如果是里面含有多个,请添加到最后,以分号;为分隔符
Path:
D:\mysql-5.7.18-winx64\bin
(3)(如果不是管理员的请打开命令提示符以管理员身份运行),运行cmd命令行窗口,cd到D:\mysql-5.7.18-winx64\bin下
命令为:cd /d D:\mysql-5.7.18-winx64\bin
(3)安装MySQL
mysqld install,运行命令后报错,提示“无法启动此程序,因为计算机中丢失MSVCR120.dll。尝试重新安装该程序已解决问题”
解决方案:上网下载MSVCR120.dll文件,放在C:\Windows\System32文件夹中,或者去C:\Windows\System32 ,查找一下MSVCR120.dll文件,我的电脑发现了msvcr120_clr0400.dll 这个文件,所以复制一份副本,然后改了一下副本的文件名即可。
同时还需要msvcp120.dll这个文件,请没有的筒靴一并处理了。
有的电脑可能安装某种程序,是不会有提示的。因为这些文件已经存在。
(4)继续运行命令:
mysqld install 成功安装mysql服务
(5)启动MySQL服务。
net start mysql将启动MySQL服务。值得注意的是用命令安装的MySQL在Windows系统下默认服务名为mysql,默认密码为空。
-------运行结果:报错
解决方案:cmd命令行提供的错误消息有限,所以我们需要找到mysql的错误日志,分析日志进而得出是什么问题。
进D:\mysql-5.7.18-winx64目录下,创建一个文件夹data目录用以存放日志。
然后重新运行 net start mysql,来生成日志文件。
D:\mysql-5.7.18-winx64\data文件夹中生成的文件中,有一个文件名是以.err后缀的文件,这个就是报错信息日志,我的电脑上PC-201511181234.err,前面是计算机的名字。
(6) 查看日志文件
用uedit64 打开PC-201511181234.err ,发现有如下的错误
2017-06-28T09:21:53.475478Z 0 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
......
2017-06-28T09:21:53.595485Z 0 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
2017-06-28T09:21:53.598485Z 0 [ERROR] Aborting
....
原因分析:没有一个初始化数据库,不能启动mysql守护进程。
(7) 初始化数据库--建立配置文件my.ini和删除data目录
删除掉D:\mysql-5.7.18-winx64目录下的data目录。否则运行初始化数据库命令也会报错。
新建一个文件名字:my.ini放到bin目录,文件内容:
[mysqld]
basedir=D:\mysql-5.7.18-winx64 ----mysql安装的目录
datadir=D:\mysql-5.7.18-winx64\data -----mysql下data目录
(如果不放my.ini到bin目录,运行初始化数据库命令就会报错:
2017-06-28T09:32:22.326446Z 0 [ERROR] --initialize specified but the data direct
ory exists and is not writable. Aborting.
)
(8) 初始化数据库
命令行执行: mysqld --initialize --user=mysql --console
先执行以上命令, 生成库. 注意有个临时密码, 要记下来.
最后一行:loaclhost:moMlyqX#j6Ky,其中moMlyqX#j6Ky这个就是临时密码,你登陆mysql数据库的时候需要用到。
(9) 启动服务
net start mysql----启动mysql服务
net stop mysql----停止mysql服务
如果不运行服务,直接进入mysql,会报错:
(8) 进入MySQL并修改密码
mysql -u root -p,密码为moMlyqX#j6Ky。显示“mysql>”表示进入MySQL
修改密码:
mysql>set password = password('root')
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)