mysql8.0踩坑

1.安装,登录官网,选择自己系统对应的版本,我是window,选的是msi包,也可以选择zip包直接解压缩就好了

2.msi的话安装过程中把对应的安装地址和data地址选好,建议把data地址选在同一目录,原因后面会讲到。

3.安装/解压完成后把安装目录下的bin目录添加到系统Path变量中

4.若按照第2步选择路径,则msi安装程序安装完后会自动在安装目录生成一个data文件和一个my.ini文件,这个文件是mysql的配置文件,生成的另外一个文件夹data中的内容全部删掉,不然一会使用自己的配置文件进行重新初始化的时候会报错,如果提示文件已打开,先在任务管理器关闭MySQL服务(一般是mysql80),再删除就好了。压缩包解压的话好像是没有my.ini文件,自己新建一个就好了。把my.ini的内容用以下内容覆盖。如果没有data目录的话也在安装目录下新建一个就好了,my.ini文件千万不能缺少,如果缺少这个文件,mysql服务会无法启动。

[mysqld]
basedir=安装目录路径
datadir=data目录路径   
port = 3306 #mysql服务监听的端口号
character-set-server=utf8
#忘记密码时使用
#skip-grant-tables
#设置协议认证方式(重点啊),新出的caching_sha2_password密码策略还有很多软件不支持,会报错:client does not support  authentication protocol requested by server; consider upgrading MySQL client
default_authentication_plugin=mysql_native_password
[mysql]
default-character-set=utf8

5.完成上述步骤后,用管理员身份运行命令行,输入以下命令初始化mysql:

mysqld --initialize --console

在输出内容中会包含一个用户名和密码的字段,一会需要用这个密码来登录,如下图第四行。


6.输入一下命令安装mysql服务(这个我也不太懂):

mysqld install [mysql]

7.启动&登录mysql服务:

net start mysql;mysql -uroot -p

然后按照提示输入前面提到的mysql的密码(报错access denied...一般是密码输错了,在用msi程序安装的时候会要求输入mysql的密码,如果没有初始化成功的话,mysql会默认使用那时候设置的密码),登录成功后,输入一下命令修改mysql root用户的密码:

ALTER USER "root"@"localhost" IDENTIFIED  BY "你的新密码";
然后使用以下命令创建一个新用户,并授予它全部权限:
USE MYSQL;
CREATE USER '用户名'@'主机地址' IDENTIFIED BY '你的密码';
GRANT ALL ON *.* TO '用户名'@'主机地址'; 
如果要让所有主机可连接,主机地址直接填%,如果要让新建的这个用户具有授权给其他用户的权限,把上面第三条命令替换为,
GRANT ALL ON *.* TO '用户名'@'主机地址' WITH GRANT OPTION;
WITH GRANT OPTION意思大概是具有授权功能,使用grant命令时,当前登录用户必须具有需要的权限,比如create的那个用户如果没有with grant option的话,使用那个用户登录mysql是没有grant命令所需的权限的。


猜你喜欢

转载自blog.csdn.net/weixin_40522938/article/details/80873219