MySQL8.0 首次安装遇到的问题及解决 及 Navicat for MySQL连接

下载

在MySQL官网(https://dev.mysql.com/downloads/mysql/)下载了最新的MySQL压缩包

my.ini

解压并打开文件,文件中并没有my.ini

新建my.ini 并进行编辑 (通过百度获得)

[mysql]
 
# 设置mysql客户端默认字符集
 
default-character-set=UTF8
 
[mysqld]
 
#设置3306端口
 
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
# 设置mysql的安装目录
 
basedir=E:\ProgrammingTools\MySQL\mysql-8.0.13-winx64
 
# 设置mysql数据库的数据的存放目录
 
datadir=E:\ProgrammingTools\MySQL\mysql-8.0.13-winx64\data
 
# 允许最大连接数
 
max_connections=200
 
# 服务端使用的字符集默认为8比特编码的latin1字符集
 
character-set-server=UTF8
 
# 创建新表时将使用的默认存储引擎
 
default-storage-engine=INNODB

basedir,datadir是MySQL压缩包解压后放置的位置

安装-mysqld install

用管理员身份运行命令提示符

进入MySQL压缩包解压后放置的位置 再进入bin 输入mysqld install 进行MySQL安装  

出现Service successfully installed.安装成功

初始化-mysqld initialize(如果data中有许多文件则初始化成功)

接下来进行初始化

使用mysqld initialize

在此处我遇到一个问题  初始化失败 在data中只有两个文件

Joker.err其中Joker是我的电脑账户名

打开错误日志,提示我UTF8原为UTF8MB3建议改为UTF8MB4

再次运行依然出错

这次错误日志出现 

[System] [MY-010116] [Server] E:\ProgrammingTools\MySQL\mysql-8.0.13-winx64\bin\mysqld.exe (mysqld 8.0.13) starting as process 3012

通过搜索在my.ini中添加了

[WinMySQLadmin]

Server=E:\ProgrammingTools\MySQL\mysql-8.0.13-winx64/bin/mysqld-nt.exe

注意路径

再次运行data中出现很多文件

则初始化成功了

启动-net start mysql 登陆 -mysql -uroot -p

然后执行net start mysql

服务启动成功,接下来是进入MySQL

执行mysql -uroot -p

这个位置需要输入密码  然而我们还没有设置密码哪儿来的密码诶

错误日志,其中有一句

[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: :snFfK9YSPLO

snFfK9YSPLO  这个就是生成临时密码

我们输入密码就登录进去了

有很多是跳过密码验证 就是在my.ini 的 [mysqld] 后面加 skip-grant-tables

会出现

MySQL 服务正在启动 ..
MySQL 服务无法启动。

ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

EROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

等等一系列错误

如果已经出现了上述错误,停止服务,将data里面的文件全部删除

my.ini修改为



[mysql]
# 设置mysql客户端默认字符集
 
default-character-set=UTF8MB4
 
[mysqld]
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
# 设置mysql的安装目录
 
basedir=E:\ProgrammingTools\MySQL\mysql-8.0.13-winx64
 
# 设置mysql数据库的数据的存放目录
 
datadir=E:\ProgrammingTools\MySQL\mysql-8.0.13-winx64\data
 
# 允许最大连接数
 
max_connections=200
 
# 服务端使用的字符集默认为8比特编码的latin1字符集
 
character-set-server=UTF8MB4
 
# 创建新表时将使用的默认存储引擎
 
default-storage-engine=INNODB
[WinMySQLadmin]


Server=E:\ProgrammingTools\MySQL\mysql-8.0.13-winx64/bin/mysqld-nt.exe

注意路径

在执行初始化>>错误日志找到密码>>使用密码登陆

密码修改-ALTER USER USER() IDENTIFIED BY '密码';

登陆成功后就是修改密码了,而且必须修改密码能进行正常使用

输入 use mysql 就会出现

 You must reset your password using ALTER USER statement before executing this statement.

由于我们的密码还是临时密码,提示我们用ALTER USER 进行改密

ALTER USER USER() IDENTIFIED BY '密码';

Navicat for MySQL连接问题

由于我是用的Navicat for MySQL

然后连接失败出现了

1251 client does no support authentic

使用   ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';

设置完密码即可正常使用

 

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值