文章詳情頁
MySQL數據庫遠程訪問權限設置方式
瀏覽:142日期:2023-05-05 10:12:02
目錄
- MySQL數據庫遠程訪問權限設置
- 改表(當然我們要先知道表在哪,適用于整個數據庫)
- 1、直接修改
- 2、加指定用戶以及指定權限
- 授權
- 總結
MySQL數據庫遠程訪問權限設置
對于初學者小伙伴來說,我們安裝mysql到本地服務,再用一些圖形化工具鏈接。
一般情況下我們都能鏈接成功;但是、在模擬真實的環境中我們的數據庫不可能直接安裝在本地機器上,大多數是在云服務器上,這種情況我們的mysql也不是路邊大巴招手即停的,你還是要約的(先買票?。?;也就是你的帳號不允許從遠程登陸,只能在localhost登錄,怎么辦?
接下來給大家講解兩種簡單的方法、方法再簡單要先用管理員賬戶登錄進去,這樣才可以修改
讓我們先登錄上mysql
改表(當然我們要先知道表在哪,適用于整個數據庫)
show databases;
#顯示所有數據庫use mysql;
#使用mysql數據庫show tables;
#找到這個user表
select * from user;
#查看該表所有信息
我們能清楚的對應的主機;用戶以及用戶權限
1、直接修改
update user set host = "%" where user = "root";#更新root用戶的主機訪問為任何值
2、加指定用戶以及指定權限
insert into user(host,user) values("ip","user");#添加一個用戶user地址ip的無權限用戶(可以插入新增用戶信息時,附帶把權限也查進去,執行時會有告警,因為表中有約束,不用深究)
新增成功,但是沒有權限。
授權
- 直接授權(mysql8.0版本會報錯,語法分割)
grant all privileges on?*.*?to "user"@"ip" identified by "123456";#授權給主機為ip的user用戶開放,所有數據庫及對應表的所有權限,并且密碼設置為123456(快速簡潔)
- 直接授權(改-針對新版本)
create user ‘user"@‘ip" identified by ‘123456";#創建一個主機地址是ip登錄密碼是123456的user用戶grant all privileges on *.* to "user"@"ip";#鏈接上一步,給他所有權限
- 指定授權
create user ‘mysql"@‘%" identified by ‘123456";#創建一個主機地址可以時任何地址的登錄密碼是123456的mysql用戶(隨時隨地,在任何地方的進行登錄操作)grant select,create on myemployees.* to "mysql"@"%";#設置mysql用戶只用myemployees庫的查,創建權限
flush privilege;#刷新下數據權限
針對mysql8.0版本以上操作時會報錯無法鏈接;
8.0版本因為密碼規則和語法規則的改變,所以要再次設置
在相同情況下依次執行以下語句
alter user ‘mysql"@‘%" identified by ‘123456" passwore expire never;#修改加密規則alter user ‘mysql"@‘%" identified by ‘123456" mysql_native_password by "123456";#再次重置密碼flush privilege;#刷新下數據權限
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持。
標簽:
MySQL
相關文章:
排行榜
