首先項目中肯定不能使用root賬戶,root用戶只有運維人員才能使用,因此需要創(chuàng)建一個用于項目中的賬戶。
create user 'userchpay'@'%' IDENTIFIED BY 'hyok^12(--m$pyuik';
一個新創(chuàng)建的用戶沒有任何權(quán)限,不能進行任何操作。
現(xiàn)在需要它只能對業(yè)務(wù)數(shù)據(jù)庫進行增,刪,改,查。
主要的權(quán)限
ALL: 所有可用的權(quán)限
CREATE: 創(chuàng)建庫、表和索引
LOCK_TABLES: 鎖定表
ALTER: 修改表
DELETE: 刪除表
UPDATE: 更新數(shù)據(jù)
INSERT: 插入表或列
SELECT: 檢索表或列的數(shù)據(jù)
CREATE_VIEW: 創(chuàng)建視圖
SHOW_DATABASES: 列出數(shù)據(jù)庫
DROP: 刪除庫、表和視圖
賦權(quán)語句
GRANT <privileges> ON <database>.<table> TO 'userchp'@'%';
<privileges>
代表著用逗號分隔的權(quán)限列表,可以使用all privileges
賦予全部權(quán)限。
如果你想要將權(quán)限賦予任意數(shù)據(jù)庫(或表),那么使用星號(*)來代替數(shù)據(jù)庫(或表)的名字。例如
grant update,delete,insert,select ON chpay.* TO 'userchpay'@'%';
%
表示所有IP都可以登錄,可以指定IP才能登錄,在mysql中一對'A'@'B'
為一條記錄,也就是一個用戶,例如grant all privileges ON chpay.* TO 'userchpay'@'111.111.111.111';
會提示用戶'userchpay'@'111.111.111.111'
不存在,因此不管是換了用戶名還是換了IP都是算新用戶,可以直接使用命令來創(chuàng)建用戶,密碼和授權(quán)grant all privileges on chpay.* to 'userchpay'@'111.111.111.111' identified by 'yourpassword' with grant option;
驗證給用戶賦予的權(quán)限
show grants for 'userchpay'@'%';
移除權(quán)限
revoke <privileges> ON <database>.<table> FROM 'userchpay'@'%';
刷新權(quán)限使其生效
FLUSH PRIVILEGES;
刪除用戶
drop user 'userchpay'@'%';
現(xiàn)在,我們?nèi)绻虢ouserchpay
增加登錄的IP白名單,也就是只有指定的IP可以登錄進,要怎么做呢?
打開mysql庫下的user表就知道,Host與User是一對的,然后后面跟著一堆權(quán)限項目,所以我的操作如下
先要將這一對刪掉drop user 'userchpay'@'%';
然后創(chuàng)建新的一對,并設(shè)置上權(quán)限,如果有多個IP,那么就多操作幾次即可。create user 'userchpay'@'111.111.111.111' IDENTIFIED BY 'hyok^12(--m$pyuik';
grant update,delete,insert,select ON chpay.* TO 'userchpay'@'111.111.111.111';
你甚至可以直接操作mysql下的user表來達到效果。
最后FLUSH PRIVILEGES;
此處需要注意一點,默認的 root 是包含 127.0.0.1
和localhost
兩個記錄的,我們在本機命令行mysql -uroot -p
只能匹配到localhost
,而 mysql -h127.0.0.1 -uroot -p
只能匹配到127.0.0.1
,處于方便考慮,root + localhost
和 root + 127.0.0.1
都應(yīng)該保留。文章來源:http://www.zghlxwxcb.cn/news/detail-500781.html
修改賬戶密碼文章來源地址http://www.zghlxwxcb.cn/news/detail-500781.html
set password for 'root'@'localhost' = password('hyok^12~--m$pyuik');
set password for 'root'@'127.0.0.1' = password('hyok^12~--m$pyuik');
set password for 'root'@'%' = password('hyok^12~--m$pyuik');
flush privileges;
到了這里,關(guān)于mysql添加用戶以及設(shè)置權(quán)限,IP白名單的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!