1.下载网址
https://dev.mysql.com/downloads/mysql/
下载要登录,可以使用Oracle账户登录
2.安装MySQL服务
- 下载好的解压到D:\developer目录下
- 配置MySQL(windows下是my.ini,Linux下是my.cnf)
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\developer\MySQL-8.0.14-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\developer\MySQL-8.0.14-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
3. 管理员身份打开cmd,切换到MySQL的bin目录,输入mysqld install回车
4. net start mysql时报错,以为是没有创建data目录,创建之后重新启动,还是失败,刚才创建的data目录下多了一个.err和binlog.index文件,err文件内容:
2019-01-24T13:18:15.582200Z 0 [System] [MY-010116] [Server] D:\developer\MySQL-8.0.14-winx64\bin\mysqld (mysqld 8.0.14) starting as process 7196
2019-01-24T13:18:15.585200Z 0 [Warning] [MY-013242] [Server] –character-set-server: ‘utf8’ is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.
2019-01-24T13:18:15.673205Z 1 [ERROR] [MY-011011] [Server] Failed to find valid data directory.
2019-01-24T13:18:15.677206Z 0 [ERROR] [MY-010119] [Server] Aborting
2019-01-24T13:18:15.678206Z 0 [System] [MY-010910] [Server] D:\developer\MySQL-8.0.14-winx64\bin\mysqld: Shutdown complete (mysqld 8.0.14) MySQL Community Server – GPL.
5. 想办法吧,盘它。。。
1)手动删掉自己创建的data文件夹
2)然后再管理员cmd下进入 bin 目录,移除自己的mysqld服务
3)在cmd的bin目录执行 mysqld –initialize-insecure
程序会在动MySQL文件夹下创建data文件夹以及对应的文件
4)bin目录下执行,mysqld –install ,安装mysqld服务
5)在bin目录下运行net start mysql ,启动mysql服务。
3.配置MySQL
完了,不知道root密码进不去,咋弄,用老方子-skip-grant-tables的方法不灵了。
- MySQL8无密码启动服务(我没试,你可以试试)
>mysqld –console –skip-grant-tables –shared-memory
将root密码置空
>UPDATE mysql.user SET authentication_string=” WHERE user=’root’ and host=’localhost’;
- –init-file
停止mysql服务
>net stop mysql
创建一个文本文件updPasswd.txt,内含一条密码修改命令
>ALTER USER ‘root’@’localhost’ IDENTIFIED BY ”; (这里密码置空了,也可直接填写新密码)
命令方式启动MySQL服务器
>mysqld –init-file=D:\developer\MySQL-8.0.14-winx64\updPasswd.txt –console
OK,大功告成
,