mysql用戶管理、經常使用sql語句、mysql數據庫備份

mysql用戶管理

建立一個網站須要鏈接Mysql,默認是root用戶,可是咱們不能老是鏈接root,萬一操做錯誤就會出問題mysql

對於某個數據庫,給user1設定權限
grant all on *.* to 'user1' identified by 'passwd';
mysql> grant all on *.* to 'user' identified by '123';
Query OK, 0 rows affected (0.00 sec)
grant all on *.* to 'user1' @'127.0.0.1' identified by '123456a';
grant:受權
all:全部的權限
*.*:表示全部,第一個*表示庫名
@後面也可寫成%,表示通配,全部的ip
使用的是socket通訊
此時,咱們退出mysql數據庫後再鏈接mysql,出現報錯,由於默認鏈接使用的是socket,當受權是localhost時,能夠直接鏈接mysql

mysql用戶管理、經常使用sql語句、mysql數據庫備份

mysql用戶管理、經常使用sql語句、mysql數據庫備份

咱們也能夠不用給全部的權限,只給定幾個權限
grant SELECT,UPDATE,INSERT on db1.* to 'user2'@'192.168.37.1' identified by 'passwd';
grant all on db1.* to 'user3'@'%' identified by 'passwd';
show grants;             //查看全部的受權,當前用戶的受權
show grants for user2@192.168.37.1;           //查看指定用戶的受權
經常使用的sql語句
select count(*) from mysql.user;                  //count(*)表示查找表的行數
select count(*) from mysql.user;                  //count(*)表示查找表的行數
select * from mysql.db;
select db from mysql.db;              //db表示字段
select db,user from mysql.db;
select * from mysql.db where host like '192.168.%';            //模糊匹配
insert into db1.t1 values (1, 'abc');                       //name字段abc是字符串,最好加上單引號
update db1.t1 set name='aaa' where id=1;
delete from db1.t1 where id=2;                              //刪除操做
truncate table db1.t1;                  //只是清空數據
drop table db1.t1;                      //全部的數據、結構等全清空
drop database db1;                    //刪掉數據庫db1
mysql數據庫備份
備份庫  mysqldump -uroot -p123456 mysql > /tmp/mysql.sql
恢復庫 mysql -uroot -p123456 mysql < /tmp/mysql.sql
備份表 mysqldump -uroot -p123456 mysql user > /tmp/user.sql  //庫與表之間用空格分開
恢復表 mysql -uroot -p123456 mysql < /tmp/user.sql             //恢復表只須要寫上庫名
備份全部庫 mysqldump -uroot -p123456 -A >/tmp/123.sql          //-A表示全部的庫
只備份表結構 mysqldump -uroot -p123456 -d mysql > /tmp/mysql.sql
相關文章
相關標籤/搜索