mysql常用幾個操作記錄

一、數據庫的導出導入

http://see.xidian.edu.cn/cpp/u/mysql_ml/

 

幾個常用用例:

1. 進入數據庫

mysql -u root -pmysql -h localhost databaseName;

2.創建帳號

         GRANTALL PRIVILEGES ON *.* TO mysql@localhost IDENTIFIED BY 'mysql' WITH GRANTOPTION;

 

允許IP連接數據庫

grant allprivileges on *.* to '用戶名'@'IP地址' identified by '密碼';

1.導出整個數據庫

mysqldump –u 用戶名–p 數據庫名> 導出的文件名

 mysqldump-u wcnc -p smgp_apps_wcnc > wcnc.sql

2.導出一個表

 mysqldump-u 用戶名 -p 數據庫名錶名> 導出的文件名

 mysqldump-u wcnc -p smgp_apps_wcnc users> wcnc_users.sql

3.導出一個數據庫結構

  mysqldump-u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql

  -d 沒有數據 --add-drop-table在每個create語句之前增加一個drop table

4.導出一個數據庫結構帶存儲過程

  mysqldump-u wcnc -p –d -R --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql

 -d 沒有數據 --add-drop-table在每個create語句之前增加一個drop table

-R 加存儲過程

5. 導出一個特定日期內的表的數據不帶表結構

mysqldump -t --skip-tz-utc --where="Date>'$begin' andDate<'$end'" --opt -h182.254.133.118 -uroot -proot!@34 poker chargeInfo

-t 不帶表創建--skip-tz-utc 使用當前時區導數據–where 符合條件


6.不加鎖備份數據,默認備份時會對錶加鎖,insert,update等會阻塞

--lock-tables=false

(可能會導致數據不一致,還沒細研究)

 

導入數據庫

  常用source 命令

  進入mysql數據庫控制檯,

  如mysql -u root-p

 

  mysql>use數據庫

  然後使用source命令,後面參數爲腳本文件(如這裏用到的.sql)

  mysql>sourced:\wcnc_db.sql

 

6.導入CSV數據。

load data infile '/tmp/test.csv'

into table XXXXX

fields terminated by ','  optionally enclosed by '"' escaped by'"'

lines terminated by '\r\n';

注意在LINUX上文件在存爲ansi格式。在window上在存爲UTF8

 

關聯刪除:

use poker;

delete from friends where

FriendId in(

select UserID from sys_users where 

and UserID < 65535

)

 

如果一條SQL執行時間太長了。需要停止這條SQL方法:

how processlist;
找出你要終止的語句的id
在系統下mysqladmin -uroot -ppassword kill 要殺的ID

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章