1.下载mysql
解压后目录如下:
2.配置环境变量
环境变量Path中加入MYSQL解压包bin所在路径
3.配置my-default.ini文件
在自己mysql解压目录下新建一个my-default.ini文件,具体内容如下:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\\mysql-8.0.12-winx64
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
其中basedir为mysql解压后文件目录
4.以管理员的方式打开cmd命令窗口
进入到mysql安装目录的bin目录下执行以下命令
(1)mysqld install 显示成功
(2)mysqld --initialize
(3)net start mysql 显示服务启动成功
此时目录结构如图所示:(安装后已自动添加data文件夹)
可能出现的错误:
(1)The service already exists!
之前安装的mysql未删除干净,用命令sc delete mysql
,删除该mysql
(2)Install/Remove of the Service Denied!
cmd未用管理员方式打开。
(3)Mysql 服务无法启动 服务没有报告任何错误
不要在my-default.ini中设置data文件夹
# 设置mysql数据库的数据的存放目录
datadir=C:\\web\\sqldata
这样会导致服务无法启动,不要添加这一句,也不要自己新建data文件夹
5.登录mysql
另注:第一次登陆MYSQL时,会提示要求输入初始密码,这是考虑安全因素,刚刚执行命令mysqld --initialize
已经为我们生成随机密码。
初始密码在data文件夹下的xxx.err文件中,打开后找到如下一行记录:
temporary password is generated for root@localhost: i(lc*0yp!s<B
其中i(lc*0yp!s<B
即为随机密码。
登陆后我们可以用以下命令修改初始密码:
这里密码修改为root,接下来检验数据库是否可以正常使用:
7.Navicat连接mysql
原因:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password,
解决问题方法有两种:
(1)升级navicat驱动。
(2)把mysql用户登录密码加密规则还原成mysql_native_password。
这里采用第二种方法
cmd登录mysql后执行如下命令:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
Query OK, 0 rows affected (0.23 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.11 sec)
重新添加,添加成功: