前言
最近學(xué)習(xí)linux,然后將win換成了ubuntu。之前安裝的mysql也不能用了,現(xiàn)在將在ubuntu18.0.4上安裝mysql并將碰到的問題記錄如下:
下載并安裝mysql
執(zhí)行語句sudo apt-get install mysql-server
因為我這里已經(jīng)安裝好了的,所以會出現(xiàn)這樣的??梢酝ㄟ^mysql --version查看安裝版本。
登錄mysql
執(zhí)行語句 mysql -u root -p
其-u是user -p是端口。登錄時出現(xiàn)ERROR 1698 (28000): Access denied for user ‘root'@‘localhost'。這應(yīng)該時我們之前安裝時候,密碼忘記了或者不記得初始化密碼造成的:
下面我們講講如何解決這個問題:
1.輸入指令sudo vim /etc/mysql/debian.cnf
我們會看到如下信息:
其中debian-sys-maint賬戶是安裝mysql時系統(tǒng)自動生成的mysql用戶,對應(yīng)的密碼就是該用戶的密碼。
2.登錄賬戶debian-sys-maint:
mysql -u debian-sys-maint -p
可以登錄mysql:
3.修改root帳號密碼:
輸入指令 use mysql;
然后輸入指令:
UPDATE user SET authentication_string=PASSWORD(‘你要設(shè)置的密碼') where USER=‘root';這就是設(shè)置root賬戶的密碼。
然后輸入指令quit,退出mysql,執(zhí)行重啟mysql指令sudo service mysql restart;
然后登錄mysql,當(dāng)執(zhí)行 mysql -u root -p,發(fā)現(xiàn)還是報錯了:ERROR 1524 (HY000): Plugin ‘msyql_native_password' is not loaded
這時候密碼其實已經(jīng)修改成功了的,是plugin root 的字段是auth_socket,需要修改過來。
4.修改plugin:
繼續(xù)使用debian-sys-maint
帳號登錄;
執(zhí)行指令:
use mysql
執(zhí)行指令:
select user,plugin from user;
接著執(zhí)行指令:
update user set authentication_string =password(‘你要設(shè)置的密碼'),plugin=‘mysql_native_password' where user=‘root';
最后退出并重啟mysql即可:
總結(jié)
以上所述是小編給大家介紹的ubuntu18.0.4安裝mysql并解決ERROR 1698 (28000): Access denied for user 'root'@'localhost',希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!