在Debian 9系統(tǒng)上安裝Mysql數(shù)據(jù)庫的方法教程
看到題目大家應(yīng)都會(huì)想,在 Debian 9 上安裝 Mysql?那不是很簡單的事兒嗎?直接 sudo apt install mysql-server 不就行了嗎?
沒想到遇到了幾個(gè)之前沒遇到的問題,耽誤了不少時(shí)間。
原來在 Debian 9 中,Mysql 已經(jīng)被替換成了 MariaDB,所以和傳統(tǒng)的安裝 Mysql 有一些不一樣的地方。
安裝方法
首先我們還是可以用 sudo apt install mysql-server 這樣安裝上的,但是安裝上的還是 MariaDB,所以最好還是采用 sudo apt install mariadb-server 這樣吧。
安裝上之后,發(fā)現(xiàn)和傳統(tǒng)的不一樣,因?yàn)闆]有彈出設(shè)置密碼的那個(gè)藍(lán)色的界面,誤以為直接可以空密碼登錄。直接嘗試 mysql -uroot -p,發(fā)現(xiàn) ERROR 1698 (28000): Access denied for user 'root'@'localhost'。難道默認(rèn)密碼不是空?查看 /etc/mysql/debian.cnf 中默認(rèn)密碼確實(shí)是空。
第一反應(yīng)是執(zhí)行 mysqld_safe skip-grant-tables,然后 use mysql; ,然后 update user set password=PASSWORD('mysql') where User='root'; 。這樣確實(shí)可以解決問題,但是重啟之后莫名發(fā)現(xiàn)又登錄不了了。
懵逼一段時(shí)間后發(fā)現(xiàn) MaraiDB 的默認(rèn)密碼確實(shí)是空,但是只能用 Root 用戶登錄
注意:這里的用戶說的是 linux 系統(tǒng)的 Root 用戶,也就是說,你 sudo su 進(jìn)入 Root 終端后,是可以正常登錄的,但是普通用戶卻無法登錄。(為了區(qū)別一下,我把 Root 終端的首字母大寫,而 mysql 的 root 用戶首字母小寫)
大概明白了,所以我們不能圖方便一直使用 root 用戶了,正確的姿勢應(yīng)該是這樣的:
首先是 sudo apt install mariadb-server 安裝上數(shù)據(jù)庫。
然后 sudo su 切換至 Root 終端,通過 mariadb -uroot -p 登錄到數(shù)據(jù)庫,如果默認(rèn)密碼不是空的話,可以查看 '/etc/mysql/debian.cnf'。
這時(shí)候要做的是創(chuàng)建新用戶:create user 'admin'@'localhost' identified by 'mysql'。
然后給新用戶設(shè)置權(quán)限:grant all on *.* to 'admin'@'localhost'。
好了,我們又設(shè)置了一個(gè)方便的 "Root" 用戶,只不過改了名字叫做 admin。
PS:我發(fā)現(xiàn)在 Root 終端中,不管密碼輸入什么都能正常連接數(shù)據(jù)庫...暈。
總結(jié)
以上就是這篇文章的全部內(nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)本站的支持。
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信