6月20日
13.4 mysql使用者管理
mysql使用者管理
1.建立一個普通使用者並授權(許可權、範圍、源IP)
mysql -uroot-p'123123'
grant all on *.* to 'user1'@'127.0.0.1'identified by '123123'; //建立一個普通使用者並授權
用法解釋說明:
grant:授權;
all:表示所有的許可權(如讀、寫、查詢、刪除等操作);
。:前者表示所有的資料庫,後者表示所有的表;
identified by:後面跟密碼,用單引號括起來;
'user1'@'127.0.0.1':指定IP才允許這個使用者登入,這個IP可以使用%代替,表示允許所有主機使用這個使用者登入;
2.測試登入
mysql -uuser1 -p123123 //由於指定IP,報錯不能登入
mysql -uuser1 -p123123 -h127.0.0.1 //加-h指定IP登入,正常
grant all on *.* to 'user1'@'localhost' identified by '123123'; //授權localhost,所以該使用者預設使用(監聽)本地mysql.socket檔案,不需要指定IP即可登入
mysql -uuser1 -p123123 //正常登入
3.針對具體的許可權(庫)去授權:
mysql -uroot-p123123 -h127.0.0.1
grant SELECT,UPDATE,INSERT
4.針對所有的IP授權:
grant all on db1.* to 'user3'@'%'identified by '123123';
5.檢視授權:
show grants;
6.指定使用者的授權是什麼 :
show grants for [email protected];
注意:假設你想給同個使用者授權增加一臺電腦IP授權訪問,你就可以直接拷貝查詢使用者授權檔案,複製先執行一條命令再執行第二條,執行的時候把IP更改掉,這樣就可以使用同個使用者密碼在另外一臺電腦上登入。
13.5 常用sql語句
常用sql語句
1.查詢這個資料庫的表的行數:
select count(*) from mysql.user;
(mysql.user表示mysql的user表,表裡顯示9,代表有9行)
2.檢視所有的內容:
select * from mysql.db\G;
3.檢視一個表的某一個欄位內容:
select db from mysql.db;
4.檢視2個欄位內容:
select db,user from mysql.db;
5.模糊查詢:
select * from mysql.db where host like '172.16.%'\G;
6.插入表:
insert into db1.t1 values (1, 'abc');
7.讓表指定內容生效:
update db1.t1 set name='aaa' where id=1;
8.刪除表:
delete form db1.t1 where id=1;
9.清空一個表的內容,表框架還保留:
truncate table db1.t1;
10.清空一個表的內容,表框架不保留:
drop table db1.t1;
11.清空資料庫(危險,沒有備份不建議操作):
drop database db1;
13.6 mysql資料庫備份恢復
mysql資料庫備份恢復
1.備份庫 :
mysqldump -uroot -p123123 mysql > /tmp/mysqlbak.sql
1.1恢復庫:
mysql -uroot -p123123 mysql < /tmp/mysqlbak.sql
2.備份表 :
mysqldump -uroot -p123123 mysql user > /tmp/user.sql
2.1恢復表 :
mysql -uroot -p123123 mysql < /tmp/user.sql
3.備份所有庫 :
mysqldump -uroot -p -A >/tmp/123.sql
4.只備份表結構 :
mysqldump -uroot -p123123 -d mysql > /tmp/mysql.sql
轉載於:https://blog.51cto.com/404006045/2131146