Mysql經常使用命令(不按期更新)

1.用戶名、密碼、權限 mysql

  
  
  
  
  1. 增長新用戶: linux

  2. 查詢:grant select on database.*  to "username"@"yourip" identified by "password"; sql

  3. 所有權限:grant all privileges on *.* to" username"@"yourip" identified by "password"; 數據庫

  4. 本地全部權限:grant all privilegeson *.* to"username"@"localhost" identified by "password"; 服務器

  5. *.*:  database.table  *.* 全部的數據庫和表,根據我的要求修改database和table名數據結構

  6. "username"@"yourip"  例如:"root"@"ip地址",即賦予該ip地址登錄此數據庫的權限。%表明全部任意ip
    ide

  7. 增長一個用戶skys,並容許從其餘機器登錄:  編碼

  8. 增刪改查:grant select,insert,update,delete on *.* to skys@"%" identified by "123456"; spa

  9. 所有權限:grant all privileges on *.* to"skys"@"%" identified by "123456"; 命令行

  10. 修改用戶名密碼:

  11. 修改mysql密碼:mysqladmin -u用戶名 -p舊密碼 password 新密碼

  12. 或進入mysql命令行SET PASSWORD FOR root=PASSWORD("root");

2. 經常使用數據庫命令

  
  
  
  
  1. 查看數據庫引擎:     show engines;

  2. 顯示數據庫列表:     show databases;

  3. 使用數據庫:         use庫名;

  4. 顯示錶:             show表名;

  5. 顯示數據表的結構:   describe 表名;

  6. 刪庫:                dropdatabase 庫名;      

  7. 刪表:                droptable 表名;

  8. 將表中記錄清空:     delete from 表名;

  9. 顯示錶中的記錄:select * from 表名;

  10. 建立數據庫並指定編碼:

  11. 1. create database 數據庫名 character set utf8 collate utf8_general_ci;

  12. 2. create  database if not exists 數據庫名 default character set utf8;

  13. 查看數據庫編碼格式的命令:

  14. 1. show variables like 'character%';顯示內容較多

  15. 2. show variables like 'collation%';顯示內容較少

  16. >show variables like'character%';  

  17. +--------------------------+----------------------------+

  18. | Variable_name | Value |  

  19. +--------------------------+----------------------------+

  20. | character_set_client | latin1 |  

  21. | character_set_connection | latin1 |  

  22. | character_set_database | latin1 |  

  23. | character_set_filesystem | binary |  

  24. | character_set_results | latin1 |  

  25. | character_set_server | latin1 |  

  26. | character_set_system | utf8 |  

  27. | character_sets_dir | /usr/share/mysql/charsets/ |  

  28. +--------------------------+----------------------------+

  29. 從以上信息可知數據庫的編碼爲latin1,須要修改成gbk或者是utf8;

  30. 其中,character_set_client爲客戶端編碼方式;

  31. character_set_connection爲創建鏈接使用的編碼;

  32. character_set_database數據庫的編碼;

  33. character_set_results結果集的編碼;

  34. character_set_server數據庫服務器的編碼;

  35. 只要保證以上五個採用的編碼方式同樣,就不會出現亂碼問題。

3. 數據庫的導入導出

  
  
  
  
  1. 導出數據庫和表:(假設數據庫名爲skys)

  2. 備份數據庫:mysqldump -uroot -p --lock-tables skys > news.sql (new 任意名)

  3. 備份全部數據庫: mysqldump --all-databases > all-databases.sql

  4. 備份表:mysqldump -u root -p skys tablename > news.sql;

  5. 不備份某個表(多個則寫多個):mysqldump -u root -p --ignore-table=sks.tablename skys > news.sql;

  6. MySQL備份並刷新日誌:mysqldump -uroot -p密碼 --flush-logs --master-data=2 --lock-tables new > new.sql

  7. 兩個參數的解說: --single-transaction 用於innodb引擎,而--lock-tables用於myisam。

  1. 經常使用:

  2. 只導出結構:mysqldump -uroot -p -q -d --lock-tables 數據庫名> news1.sql

  3. 只導出數據不導出結構:mysqldump -uroot -p -q -t --lock-tables 數據庫名> news2.sql

  4. 導出存儲過程:mysqldump -uroot -n -t -d -R --triggers=false new > new.sql

  5. 導出數據庫導出存儲過程導出事件:mysqldump -uroot -nR --events new> a.sql;

  6. 導出事件:mysqldump -uroot -p -q -t -d --events skys > events.sql


  7. 導入數據和表:

  8. 命令行導入數據庫:mysql -uroot -p < news.sql

  9. mysql命令下執行導入:use 數據庫名; source news.sql;

  10. 運行存儲過程:call 名稱(參數);

  11. 備註1:用命令導出數據庫和用Navicat等客戶端導出的數據庫多少會存在差別,經過linux系統下的mysql命令

  12. 導出的數據庫建議仍然使用命令導入,經過客戶端導出的數據庫用命令導入時,會發現常常爆warning警告!

  13. 備註2:對於不一樣版本的mysql。建議分別導出數據結構和數據,再從新導入。(可減小出錯率,防止出現沒必要要損失)

  14. 備註3:分別導出數據和導出結構時,須要注意結構中是否有DROP命令,根據我的狀況選擇是否刪除DROP命令。

相關文章
相關標籤/搜索