Freebsd UNIX 下MySQL資料庫日常維護命令

  • MYSQL資料庫維護:

開啟服務:/usr/local/share/mysql/mysql.server start

重啟服務:/usr/local/share/mysql/mysql.server restart

關閉服務:/usr/local/share/mysql/mysql.server stop

資料庫維護命令:

#在資料庫里表新建一個用戶

INSERT INTO user (host,user,password) VALUES(‘localhost’,’postfix’,”);

 

#修改root用戶的密碼,其它用戶密碼可參照該命令
update user set password=password(‘########’) where User=’root’;

 

#刷新許可權表
FLUSH PRIVILEGES;

 

#賦於本地用戶MONTY用密碼somtining對本地所有資料庫擁有 選擇、插入、更新、刪除、新建,刪表許可權

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON *.* TO monty@localhost
IDENTIFIED BY ‘something’ WITH GRANT OPTION;

 

#賦於本地用戶monty用密碼something對本地所有資料庫擁有全部許可權

GRANT ALL PRIVILEGES ON *.* TO monty@localhost
IDENTIFIED BY ‘something’ WITH GRANT OPTION;

#用root登陸MYSQL資料庫

shell> mysql –user=root mysql

#賦於本地用戶CUSTOM用STUPID密碼對BANKACCOUNT資料庫有選擇、插入、更新、刪除、新建、刪表許可權

mysql> GRANT ALTER,SELECT,INSERT,UPDATE,DELETE,CREATE,DROP    ->     ON bankaccount.*    ->     TO custom@localhostè   IDENTIFIED BY ‘stupid’;

#賦於whitehouse.gov的custom用stupid密碼對expenses資料庫有選擇、插入、更新、刪除、新建、刪表許可權

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP    ->     ON expenses.*    ->     TO custom@whitehouse.gov    ->      IDENTIFIED BY ‘stupid’;

#賦於custom用stupid密碼從任何機器可以對customer資料庫擁有選擇、插入、更改、刪除、新建、刪表許可權

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP    ->     ON customer.*    ->     TO custom@’%’    ->     IDENTIFIED BY ‘stupid’;

#賦於 custom用戶用666888這個密碼從任何地方訪問進來,並訪問任何資料庫,並只有select 許可權。

GRANT SELECT ON *.* TO custom@’%’IDENTIFIED BY ‘666888’;

 

#DING9網站資料庫新建一個普通許可權的賬號ding9:

INSERT INTO user (host,user,password) VALUES(‘localhost’,’ding9′,”);

 

#設置ding9用戶的密碼
update user set password=password(‘131468′) where User=’ding9’;

 

#刷新許可權表
FLUSH PRIVILEGES;

 

#賦於用戶ding9用密碼131468擁有對本地所有資料庫有選擇、插入、更換、刪除、新建、刪表許可權

GRANT ALTER,SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON *.* TO ding9@localhost
IDENTIFIED BY ‘131468’ WITH GRANT OPTION;

 

MYSQL資料庫數據備份常用命令

#數據導出命令

mysqldump -uroot -p –default-character-set=gbk –skip-opt Ding9_DB > ding9.sql

#數據導入命令

mysql -uroot -p –default-character-set=gbk -f Ding9_DB <  ding9.sql

 

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.導入資料庫

常用source 命令

進入mysql資料庫控制台,

如mysql -u root -p

mysql>use 資料庫

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

mysql>source d:wcnc_db.sql

59.42.246.3資料庫備份命令:

a\備份表格結構

mysqldump -u root -p -d –add-drop-table search > searchtb20060926.sql

b\備份數據紀錄:

mysqldump -u root -p –default-character-set=gbk –skip-opt -q -t search > searchrc20060926.sql

 

#資料庫表格結構導出

mysqldump -u root -p -d –add-drop-table Ding9_DB > ding9tb.sql

#資料庫紀錄導出

mysqldump -u root -p –default-character-set=gbk –skip-opt -q -t Ding9_DB > ding9rc.sql

#資料庫表紀錄導出

mysqldump –u root –p –-default-character-set=gbk –skip-opt –t Ding9_DB union_ad_nod > ding9_union_ad.nod.sql

mysqldump –u root –p –-default-character-set=gbk –skip-opt –t Ding9_DB union_check > ding9_union_check.sql

mysqldump –u root –p –default-character-set=gbk –skip-opt –t Ding9_DB union_register_nod  > ding9_union_register_nod.sql

#資料庫表格結構導入

mysql -u root -p Ding9_DB < ding9tb.sql

#資料庫紀錄導入

mysql -u root -p –default-character-set=gbk –f  Ding9_DB < ding9rc.sql

#網站內容備份

tar czvf www.tar.gz Agent Class Cooperate.php Css Funtion Images Inc Js Member News Other ProductCriterion ProductExpand Server Shop Tp_* Union Webadmin crawl ploy_pic smarty  *.php *.html *.htm

#文件分割,將一個大文件分成幾個小分件。

Split –l 1000000 文件名 //將文件名按1000000條紀錄分成幾個小分件,默認為xaa xab xac xae……..這樣分割下去。

#split –l 1000000 文件名 ding9 //將文件名按1000000條紀錄分成幾個小分件,分件前綴為ding9

#計算文件紀錄數

wc –l 文件名

快速修復MySQL資料庫

有的時候因為掉電或者其他原因導致資料庫損壞,我們可以使用mysql自帶的mysqlcheck命令來快速修復所有的資料庫或者特定的資料庫;例如
檢查優化並修復所有的資料庫用:

# mysqlcheck -A -o -r -p
Enter password:
guestbook.simpgb_avatars OK
guestbook.simpgb_bad_words OK
guestbook.simpgb_banlist OK
guestbook.simpgb_data OK
……
……
……

修復指定的資料庫用

# mysqlcheck -o -r Database_NAME -p

即可

 

以下文章點擊率最高

Loading…

     

如果這文章對你有幫助,請掃左上角微信支付-支付寶,給於打賞,以助博客運營