可以用shell寫個腳本批量添加mysql用戶:
創(chuàng)新互聯(lián)公司,是成都地區(qū)的互聯(lián)網(wǎng)解決方案提供商,用心服務(wù)為企業(yè)提供網(wǎng)站建設(shè)、重慶APP開發(fā)、成都微信小程序、系統(tǒng)按需定制和微信代運(yùn)營服務(wù)。經(jīng)過數(shù)十余年的沉淀與積累,沉淀的是技術(shù)和服務(wù),讓客戶少走彎路,踏實(shí)做事,誠實(shí)做人,用情服務(wù),致力做一個負(fù)責(zé)任、受尊敬的企業(yè)。對客戶負(fù)責(zé),就是對自己負(fù)責(zé),對企業(yè)負(fù)責(zé)。
#!/bin/bash
i=$1;
MAX_INSERT_ROW_COUNT=$2;
while?[?$i?-le?$MAX_INSERT_ROW_COUNT?]
do
mysql?-uopensips?-popensipsrw?opensips?-e?"insert?into?subscriber(username,password)?values?('10$i',10$i);"
d=$(date?+%M-%d\?%H\:%m\:%S)
echo?"INSERT?username?10$i?on??$d"???
i=$((i+1))
sleep?0.05
done
exit?0
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
說明:username - 你將創(chuàng)建的用戶名, host - 指定該用戶在哪個主機(jī)上可以登陸,如果是本地用戶可用localhost, 如果想讓該用戶可以從任意遠(yuǎn)程主機(jī)登陸,可以使用通配符%. password - 該用戶的登陸密碼,密碼可以為空,如果為空則該用戶可以不需要密碼登陸服務(wù)器.
例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
MySql中添加用戶,新建數(shù)據(jù)庫,用戶授權(quán),刪除用戶,修改密碼(注意每行后邊都跟個;表示一個命令語句結(jié)束):
1.新建用戶
1.1 登錄MYSQL:
@mysql -u root -p
@密碼
1.2 創(chuàng)建用戶:
mysql insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));
這樣就創(chuàng)建了一個名為:test 密碼為:1234 的用戶。
注意:此處的"localhost",是指該用戶只能在本地登錄,不能在另外一臺機(jī)器上遠(yuǎn)程登錄。如果想遠(yuǎn)程登錄的話,將"localhost"改為"%",表示在任何一臺電腦上都可以登錄。也可以指定某臺機(jī)器可以遠(yuǎn)程登錄。
1.3 然后登錄一下:
mysqlexit;
@mysql -u test -p
@輸入密碼
mysql登錄成功
2.為用戶授權(quán)
授權(quán)格式:grant 權(quán)限 on 數(shù)據(jù)庫.* to 用戶名@登錄主機(jī) identified by "密碼";
2.1 登錄MYSQL(有ROOT權(quán)限),這里以ROOT身份登錄:
@mysql -u root -p
@密碼
2.2 首先為用戶創(chuàng)建一個數(shù)據(jù)庫(testDB):
mysqlcreate database testDB;
2.3 授權(quán)test用戶擁有testDB數(shù)據(jù)庫的所有權(quán)限(某個數(shù)據(jù)庫的所有權(quán)限):
mysqlgrant all privileges on testDB.* to test@localhost identified by '1234';
mysqlflush privileges;//刷新系統(tǒng)權(quán)限表
格式:grant 權(quán)限 on 數(shù)據(jù)庫.* to 用戶名@登錄主機(jī) identified by "密碼";
2.4 如果想指定部分權(quán)限給一用戶,可以這樣來寫:
mysqlgrant select,update on testDB.* to test@localhost identified by '1234';
mysqlflush privileges; //刷新系統(tǒng)權(quán)限表
2.5 授權(quán)test用戶擁有所有數(shù)據(jù)庫的某些權(quán)限:
mysqlgrant select,delete,update,create,drop on *.* to test@"%" identified by "1234";
//test用戶對所有數(shù)據(jù)庫都有select,delete,update,create,drop 權(quán)限。
//@"%" 表示對所有非本地主機(jī)授權(quán),不包括localhost。(localhost地址設(shè)為127.0.0.1,如果設(shè)為真實(shí)的本地地址,不知道是否可以,沒有驗(yàn)證。)
//對localhost授權(quán):加上一句grant all privileges on testDB.* to test@localhost identified by '1234';即可。
mysql怎樣增加用戶
格式:grant select on 數(shù)據(jù)庫.* to 用戶名@登錄主機(jī) identified by "密碼"
例1、增加一個用戶test1密碼為abc,讓他可以在任何主機(jī)上登錄,并對所有數(shù)據(jù)庫有查詢、插入、修改、刪除的權(quán)限。首先用以root用戶連入MYSQL,然后鍵入以下命令:
mysqlgrant select,insert,update,delete on *.* to test1@"%" Identified by "abc";
但例1增加的用戶是十分危險的,你想如某個人知道test1的密碼,那么他就可以在internet上的任何一臺電腦上登錄你的mysql數(shù)據(jù)庫并對你的數(shù)據(jù)可以為所欲為了,解決辦法見例2。
例2、增加一個用戶test2密碼為abc,讓他只可以在localhost上登錄,并可以對數(shù)據(jù)庫mydb進(jìn)行查詢、插入、修改、刪除的操作(localhost指本地主機(jī),即MYSQL數(shù)據(jù)庫所在的那臺主機(jī)),這樣用戶即使用知道test2的密碼,他也無法從internet上直接訪問數(shù)據(jù)庫,只能通過MYSQL主機(jī)上的web頁來訪問了。
mysqlgrant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";
如果你不想test2有密碼,可以再打一個命令將密碼消掉。
mysqlgrant select,insert,update,delete on mydb.* to test2@localhost identified by "";
另外,也可以通過直接往user表中插入新紀(jì)錄的方式來實(shí)現(xiàn)。