linux系統(tǒng)mysql安裝與遠程鏈接(CentOS7)

這一塊直接轉(zhuǎn)載了,大概分為兩步,第一當(dāng)然是安裝了,安裝好了我試了智能在那臺機子上操作數(shù)據(jù)庫。遠程一直鏈接不上,檢查了端口密碼用戶發(fā)現(xiàn)都是對了,我在網(wǎng)上一查,才知道默認設(shè)置是關(guān)閉遠程鏈接的。像我這種window用戶肯定需要遠程鏈接方便工具管理數(shù)據(jù)庫,于是就按照前輩們的指點一步步做。我用的是centos 7系統(tǒng),已經(jīng)成功了。


注意:數(shù)據(jù)庫其實還有很多設(shè)置,以后慢慢整理,比如數(shù)據(jù)庫編碼/用戶權(quán)限等,這里數(shù)據(jù)庫這里很重要


安裝

轉(zhuǎn)載 http://www.linuxidc.com/Linux/2016-09/134940.htm

CentOS7默認數(shù)據(jù)庫是mariadb,配置等用著不習(xí)慣,因此決定改成mysql,但是CentOS7的yum源中默認好像是沒有mysql的。為了解決這個問題,我們要先下載mysql的repo源。

1.下載mysql的repo源

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

2.安裝mysql-community-release-el7-5.noarch.rpm包

sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

安裝這個包后,會獲得兩個mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。

3.安裝mysql

sudo yum install mysql-server

根據(jù)提示安裝就可以了,不過安裝完成后沒有密碼,需要重置密碼

4.重置mysql密碼

$ mysql -u root

登錄時有可能報這樣的錯:ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的訪問權(quán)限問題。下面的命令把/var/lib/mysql的擁有者改為當(dāng)前用戶:

$ sudo chown -R root:root /var/lib/mysql

重啟mysql服務(wù)

$ service mysqld restart

接下來登錄重置密碼:

$ mysql -u root
//直接回車進入mysql控制臺

mysql > update user set password=password('123456') where user='root';
mysql > exit;

遠程鏈接

轉(zhuǎn)載 http://www.linuxidc.com/Linux/2013-06/86459.htm
Mysql為了安全性,在默認情況下用戶只允許在本地登錄,可是在有此情況下,還是需要使用用戶進行遠程連接,因此為了使其可以遠程需要進行如下操作:

一、允許root用戶在任何地方進行遠程登錄,并具有所有庫任何操作權(quán)限,具體操作如下:
在本機先使用root用戶登錄mysql:
mysql -u root -p"youpassword"
進行授權(quán)操作:
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
重載授權(quán)表:
FLUSH PRIVILEGES;
退出mysql數(shù)據(jù)庫:
exit

二、允許root用戶在一個特定的IP進行遠程登錄,并具有所有庫任何操作權(quán)限,具體操作如下:
在本機先使用root用戶登錄mysql:
mysql -u root -p"youpassword"
進行授權(quán)操作:
GRANT ALL PRIVILEGES ON *.* TO root@"172.16.16.152" IDENTIFIED BY "youpassword" WITH GRANT OPTION;
重載授權(quán)表:
FLUSH PRIVILEGES;
退出mysql數(shù)據(jù)庫:
exit

三、允許root用戶在一個特定的IP進行遠程登錄,并具有所有庫特定操作權(quán)限,具體操作如下:
在本機先使用root用戶登錄mysql:
mysql -u root -p"youpassword"
進行授權(quán)操作:
GRANT select,insert,update,delete ON *.* TO root@"172.16.16.152" IDENTIFIED BY "youpassword";
重載授權(quán)表:
FLUSH PRIVILEGES;
退出mysql數(shù)據(jù)庫:
exit

四、刪除用戶授權(quán),需要使用REVOKE命令,具體命令格式為:
REVOKE privileges ON 數(shù)據(jù)庫[.表名] FROM user-name;
具體實例,先在本機登錄mysql:
mysql -u root -p"youpassword"
進行授權(quán)操作:
GRANT select,insert,update,delete ON TEST-DB TO test-user@"172.16.16.152" IDENTIFIED BY "youpassword";
再進行刪除授權(quán)操作:
REVOKE all on TEST-DB from test-user;
****注:該操作只是清除了用戶對于TEST-DB的相關(guān)授權(quán)權(quán)限,但是這個“test-user”這個用戶還是存在。
最后從用戶表內(nèi)清除用戶:
DELETE FROM user WHERE user="test-user";
重載授權(quán)表:
FLUSH PRIVILEGES;
退出mysql數(shù)據(jù)庫:
exit

五、MYSQL權(quán)限詳細分類:
全局管理權(quán)限:
FILE: 在MySQL服務(wù)器上讀寫文件。
PROCESS: 顯示或殺死屬于其它用戶的服務(wù)線程。
RELOAD: 重載訪問控制表,刷新日志等。
SHUTDOWN: 關(guān)閉MySQL服務(wù)。
數(shù)據(jù)庫/數(shù)據(jù)表/數(shù)據(jù)列權(quán)限:
ALTER: 修改已存在的數(shù)據(jù)表(例如增加/刪除列)和索引。
CREATE: 建立新的數(shù)據(jù)庫或數(shù)據(jù)表。
DELETE: 刪除表的記錄。
DROP: 刪除數(shù)據(jù)表或數(shù)據(jù)庫。
INDEX: 建立或刪除索引。
INSERT: 增加表的記錄。
SELECT: 顯示/搜索表的記錄。
UPDATE: 修改表中已存在的記錄。
特別的權(quán)限:
ALL: 允許做任何事(和root一樣)。
USAGE: 只允許登錄--其它什么也不允許做。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容