windows10安装mysql(解压版)初始化报错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windows10安装mysql(解压版)初始化报错相关的知识,希望对你有一定的参考价值。

win10系统,已安装了mysql8。安装mysql5.7解压版,在初始化时报错,是什么原因?cmd使用的是管理员权限,install 命令可正常注册服务,只有在初始化时(--initialize)报错。

方法/步骤

    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')

参考技术A 你的文件路径了能错了,或者文件损坏了要重新开始弄

MySQL解压版安装步骤(Windows)

MySQL解压版安装步骤(Windows)

重要的事情说三遍:
注:如果是系统已安装过mysql,且有配置环境变量的话,介意先把环境变量删掉,否则后面登录也许会出现报登录失败的问题。
注:如果是系统已安装过mysql,且有配置环境变量的话,介意先把环境变量删掉,否则后面登录也许会出现报登录失败的问题。
注:如果是系统已安装过mysql,且有配置环境变量的话,介意先把环境变量删掉,否则后面登录也许会出现报登录失败的问题。

  1. 解压mysql安装包,解压后的文件夹即为安装目录,如D:\\mysql-8.0.11-winx64
  2. 在安装目录下新建配置文件my.ini,其内容参考如下:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]
#设置3306端口,端口号可自定义,只不过要与之前版本不冲突
port = 3306
# 设置mysql的安装目录
basedir=D:\\MySQL\\mysql-5.7.31-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\\MySQL\\mysql-5.7.31-winx64\\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#default-time_zone 默认时区,可以不设置,但是为使用now()方便,建议设置
default-time_zone = '+8:00'
# 解决分组查询的问题
sql_mode ='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION'
  1. 在安装目录下建立文件夹data

  2. 在以管理员身份运行cmd命令窗口(注意一点要管理员模式的命令行,否则可能出现权限不足的提示)

  3. 在命令窗口进入安装目录下的bin目录,命令示例如下:

d:
cd \\mysql-8.0.11-winx64\\bin
  1. 运行如下命令,该命令将初始化mysql,并在控制台输出信息,同时生成一个临时密码在控制台上显示,请将临时密码记住
mysqld --initialize --console
  1. 运行如下命令,安装mysql服务,服务名为MySQL,服务名字可修改,但是不能与其他版本同名,
mysqld --install MySQL
  1. 运行如下命令启用mysql服务
net start MySQL
  1. 运行如下命令,以root身份和临时密码登录数据库
    注:如果安装了两个mysql的情况下,安装mysql8 时,
    登录应该在输: mysql -P3306 -uroot -p 回车后显示输入密码,输入临时密码,即可完成登录

  2. 登入mysql后运行如下命令,修改root密码,修改自己想要设置的密码
    set password=‘xxxxx’;

最后退出登录,重新登录就可以使用新的密码了。

附录

1.停止mysql服务:net stop mysql
2.卸载mysql服务:mysqld remove [mysql服务名] (以管理员身份运行的cmd命令窗口,并进入安装目录下的bin目录)

以上是关于windows10安装mysql(解压版)初始化报错的主要内容,如果未能解决你的问题,请参考以下文章

Windows10下安装解压版MySQL教程

window7安装mysql 5.7的初始密码是多少

MySQL解压版安装步骤(Windows)

MySQL解压版安装步骤(Windows)

Windows10 环境下安装mysql 7(解压缩版)

windows(win10)下的mysql解压版安装