解决Windows环境下安装 mysql-8.0.11-winx64 遇到的问题
下载mysql安装包,我的是下载mysql-8.0.11-winx64,解压到你想安装的目录下,然后配置环境(window环境下,mac本还没试过),
1、首先,配置环境:右击此电脑->属性->高级系统设置->环境变量->path->新建 ,然后将自己的路径添加进去(例如我目录:F:\mysql\mysql-8.0.11-winx64),除此之外还要看解压的压缩包内是否有my.ini文件或者my-default.ini文件,如果没有需要自己写一个在根目录下,默认的配置信息如下:
查看所有的配置项,可参考:https://dev.mysql.com/doc/refman/8.0/en/mysqld-option-tables.html
[mysqld]# 设置3306端口port=3306# 设置mysql的安装目录basedir=F:\mysql\mysql-8.0.11-winx64# 设置mysql数据库的数据的存放目录(此目录会在之后进行命令生成,无需手写)datadir=F:\mysql\mysql-8.0.11-winx64\Data# 允许最大连接数max_connections=200# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统max_connect_errors=10# 服务端使用的字符集默认为UTF8character-set-server=utf8# 创建新表时将使用的默认存储引擎default-storage-engine=INNODB# 默认使用“mysql_native_password”插件认证default_authentication_plugin=mysql_native_password[mysql]# 设置mysql客户端默认字符集default-character-set=utf8[client]# 设置mysql客户端连接服务端时默认使用的端口port=3306default-character-set=utf8
注意这一步可能会遇到一些报错信息,例如弹出“ 由于找不到vcruntime140.dll,无法继续执行代码,重新安装程序可能会解决此问题 ”等问题,说明你的电脑缺少一些必要的文件,这时要打开控制面板查看C++ 2015具体信息,
我的是因为之前没有x64位的C++,所以缺少文件,如果你的有,那么可点击卸载,它会提示你让你进行修复,点击修复,完成,就可以继续在终端输入命令;
初始化数据库
mysqld --initialize --console
这时会打印如下error,意思是已经有了data目录了,只要把他删除就好,
F:\mysql\mysql-8.0.11-winx64\bin>mysqld --initialize --console
2018-10-29T09:26:35.244245Z 0 [System] [MY-013169] [Server] F:\mysql\mysql-8.0.11-winx64\bin\mysqld.exe (mysqld 8.0.11) initializing of server in progress as process 980
2018-10-29T09:26:35.287469Z 0 [ERROR] [MY-010457] [Server] --initialize specified but the data directory has files in it. Aborting.
2018-10-29T09:26:35.299110Z 0 [ERROR] [MY-010119] [Server] Aborting
2018-10-29T09:26:35.302159Z 0 [System] [MY-010910] [Server] F:\mysql\mysql-8.0.11-winx64\bin\mysqld.exe: Shutdown complete (mysqld 8.0.11) MySQL Community Server - GPL.
再次执行上面命令,会打印用户的初始密码,其中@localhost : XXXXXX就是默认密码,需要记住,如果没有记住,就将后来生成的data文件删除,再次生成也是可以的
F:\mysql\mysql-8.0.11-winx64\bin>mysqld --initialize --console
2018-10-29T09:28:49.177043Z 0 [System] [MY-013169] [Server] F:\mysql\mysql-8.0.11-winx64\bin\mysqld.exe (mysqld 8.0.11) initializing of server in progress as process 12980
2018-10-29T09:29:19.270535Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: kw3AlnY_g.Dg
2018-10-29T09:29:41.684599Z 0 [System] [MY-013170] [Server] F:\mysql\mysql-8.0.11-winx64\bin\mysqld.exe (mysqld 8.0.11) initializing of server has completed
3、然后安装服务, mysqld --install[服务名] 如果只有一个服务可以不写默认mysql,如果多个服务可以写具体的服务名称,XXXX,当回车之后,又出现错误, install/remove of the service deined,这是由于运行cmd的时候不是用管理员的身份运行的,只要再次以管理员的命令运行cmd就可以了,出现service successfully installed 说明服务安装好了。
F:\mysql\mysql-8.0.11-winx64\bin>mysqld --installService successfully installed.
F:\mysql\mysql-8.0.11-winx64\bin>net start mysqlMySQL 服务正在启动 ....MySQL 服务已经启动成功。
在MySQL安装目录的 bin 目录下执行命令:mysql -u root -p
F:\mysql\mysql-8.0.11-winx64\bin>mysql -u root -pEnter password: *******ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
F:\mysql\mysql-8.0.11-winx64\bin>mysqld --initialize --console2018-10-29T10:04:23.337650Z 0 [System] [MY-013169] [Server] F:\mysql\mysql-8.0.11-winx64\bin\mysqld.exe (mysqld 8.0.11) initializing of server in progress as process 79282018-10-29T10:05:19.210237Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: RXZG!fJR2Ly+2018-10-29T10:06:00.603070Z 0 [System] [MY-013170] [Server] F:\mysql\mysql-8.0.11-winx64\bin\mysqld.exe (mysqld 8.0.11) initializing of server has completed
F:\mysql\mysql-8.0.11-winx64\bin>mysql -u root -p
Enter password: ************
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.11Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
修改用户密码,在MySQL中执行命令:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';,出现下面情况就证明你已经修改成功。
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '5502yulijian.';Query OK, 0 rows affected (0.17 sec)
这样就可以了
总结
更多相关文章
- Linux下MYSQL 5.7 找回root密码的问题(亲测可用)
- Android(安卓)10 定位问题,获取NMEA(支持5.0~10.0)
- mybatisplus的坑 insert标签insert into select无参数问题的解决
- Android(安卓)环境搭建
- Android开发环境搭建
- 使用NetBeans搭建Android开发环境
- 关于Android(安卓)Studio3.2新建项目Android(安卓)resource link
- Android(安卓)流式布局FlowLayout(搜索历史),多布局、删除、添加
- Android软键盘适配问题