mysql預設情況下使用者只允許在本地登入,如果需要遠端登入該如何操作呢?
1、建立新使用者
格式:
grant 許可權 on 資料庫名.表名 使用者@登入主機 identified by "使用者密碼";
grant
select
,update
,insert
,delete
on *.*
toname@ip
identified
by "password";
建立乙個使用者名為name,密碼是password的使用者,且只允許ip位址為「ip」的主機訪問,該使用者具有增刪改查四種許可權。
name@'%':允許任意ip位址的主機訪問。all privileges 表示賦予所有的許可權給指定使用者,這裡也可以替換為賦予某一具體的許可權,例如:select,insert,update,delete,create,drop 等,具體許可權間用「,」半形逗號分隔。
grant用法詳見keyword目錄
2、對現有使用者授權
grant
all
privileges
on *.*
to 'root'
@'%'
identified
by "password"
with
grant
option;
授予所有許可權。
note:
授權完畢可執行
flush
privileges
; 過載授權表,即可立即使用。
3、改表法
mysql
>
usemysql
database changed
mysql
>
update
user
sethost
='%'
where
user
='mysql';
query ok,1
rowaffected
(0.00
sec)
rows
matched:1
changed:1
warnings:0
mysql
>
flush
privileges;
query ok,0
rows
affected
(0.00
sec)
進入」mysql「庫--更新許可權資訊--過載授權表。
mysql許可權詳細分類:
全域性管理許可權:
file: 在mysql伺服器上讀寫檔案。
process: 顯示或殺死屬於其它使用者的服務執行緒。
reload: 過載訪問控制表,重新整理日誌等。
shutdown: 關閉mysql服務。
資料庫/資料表/資料列許可權:
alter: 修改已存在的資料表(例如增加/刪除列)和索引。
create: 建立新的資料庫或資料表。
delete: 刪除表的記錄。
drop: 刪除資料表或資料庫。
index: 建立或刪除索引。
insert: 增加表的記錄。
select: 顯示/搜尋表的記錄。
update: 修改表中已存在的記錄。
特別的許可權:
all: 允許做任何事(和root一樣)。
usage: 只允許登入--其它什麼也不允許做。
mysql遠端連線設定 MySQL遠端連線設定
這只是乙個簡單mysql設定。但很多圖簡單,卻忽略了安全性。所以對設定中的細節和含義需要弄到清清楚楚才行。這只是乙個簡單mysql設定。但很多圖簡單,卻忽略了安全性。所以對設定中的細節和含義需要弄到清清楚楚才行。mysql遠端連線的設定問題 下面是步驟 1 登陸本地的mysql server mys...
mysql 遠端連線失敗 mysql 遠端連線失敗
一 mysql 禁止 ip 遠端連線 mysql 庫 user表中 host 為 localhost 修改為 允許所有 ip 連線 或者 新增一條資料 host 為允許連線的 ip 二 授權某個使用者可以遠端連線 以root為例 grant all privileges on to root ide...
mysql遠端連線條件 MySql 遠端連線的條件
1 首先看伺服器防火牆 引用 centos 7.0預設使用的是firewall作為防火牆,使用iptables必須重新設定一下 1 直接關閉防火牆 systemctl stop firewalld.service 停止firewall systemctl disable firewalld.serv...