今天下了個 mysql8.0,發現phpstudy front連線不上,總是報錯1251;
原因是mysql8.0版本的加密方式和mysql5.0的不一樣,連線會報錯。
試了很多種方法,終於找到一種可以實現的:
更改加密方式
1.先通過命令列進入mysql的root賬戶:
ps c:\windows\system32> mysql -uroot -p
再輸入root的密碼:
enter
password
: ******
welcome
to
the mysql monitor. commands
end
with
;
or
\g.
your mysql
connection
id
is
18
server version: 8.0.11 mysql community server - gpl
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>
2.更改加密方式:
mysql>
alter
user
'root'
@
'localhost'
identified
by
'password'
password
expire never;
query ok, 0
rows
affected (0.10 sec)
3.更改密碼:該例子中 123為新密碼
mysql>
alter
user
'root'
@
'localhost'
identified
with
mysql_native_password
by
'123'
;
query ok, 0
rows
affected (0.35 sec)
4.重新整理:
mysql> flush
privileges
;
query ok, 0
rows
affected (0.28 sec)
// 如果報錯error 1396 (hy000): operation alter user failed for 'root'@'%':
則是遠端訪問許可權不正確,先選擇資料庫,檢視一下再更改:
mysql> use mysql;
database
changed
mysql>
select
user
,host
from
user
;
+
------------------+-----------+
|
user
| host |
+
------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+
------------------+-----------+
5
rows
in
set
(0.00 sec)
Mysql 連線報錯 1251解決方案
mysql8.0版本的加密方式和mysql5.0的不一樣,連線會報錯。試了很多種方法,終於找到一種可以實現的 更改加密方式 1.先通過命令列進入mysql的root賬戶 1 ps c windows system32 mysql uroot p 再輸入root的密碼 1 2345 6789 10en...
MySQL連線報錯 1045解決
下面是報錯的彈框 出現這個錯誤的本質是因為你的密碼填寫錯誤,但你是不是會疑惑之前一直是這個密碼,咋會不對呢?那麼你跟我是一樣的問題,請往下看。解決步驟 1 首先停止mysql的服務,window r 輸入 services.msc,找到mysql服務停止它。關閉服務後,cmd 進入控制台 這裡需要使...
Navicat 連線 Mysql 出現1251錯誤
出現這個原因是mysql8 之前的版本中加密規則是mysql native password 解決辦法 先輸入 alter user root localhost identified by password password expire never 修改加密規則 再輸入alter user ro...