iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 10
1
AI & Data

一名合格的DBA要從底層一步步爬起系列 第 10

《Day10》輕鬆操作MySQL工具

  • 分享至 

  • xImage
  •  

MySQL提供各種的管理工具,譬如說資料備份(mysqlbackup)、查看日誌(mysqlbinlog)、資料匯入(mysqlimport)等,如果學會了,可以讓我們更便利,一起來認識看看吧!

mysql(用戶連接工具)

這一個工具我們在前面已經用好幾次了,主要是用來連接資料庫的client端,是用戶與資料庫溝通的媒介。

mysql [option]
常用的option:
-u , --user=name :指定用戶
-p,--password :指定密碼
-h,--host :指定來源(IP或者是DNS)
-P,--port :指定連接阜
-D,--database :指定連接資料庫
-e,--execute =”指令“:執行指令後退出
-S,--socket=’路徑’:指定socket位置

mysqladmin(管理工具)

用來檢查server配置與狀態,也可以建立或刪除資料庫,類似mysql工具,但比較特別是可以用來做其他管理,像是關閉MySQL服務。
指令:
mysqladmin –uroot –p [option]
以下為常用的option:
Create [databasename] 建立資料庫
Drop [databasename] 移除資料庫
flush-logs flush所有的日誌
flush-privileges 重新載入權限表
password 更改密碼
ping 檢查MySQL服務是否啟動
shutdown 關閉MySQL服務

mysqlbinlog(管理日誌工具)

MYSQL的binlog是以二進位格式保存,如果要查內log內容需要使用mysqlbinlog工具。
指令:
mysqlbinlog [options] log_file
常用的[option]:
-d,--database=name 只會列出關於指定資料庫的訊息
-o,--offset N 忽略日誌前N行
-s,--short-form 顯示簡單格式
--start-position --stop-postion 查看指定位置

mysqldump(資料匯出工具)

用來匯出資料,但會以SQL語法匯出,是常用的備份方式之一。

指令:
mysqldump –uroot –p [option]
常用的[option]
-A,--all-database 匯出全部的資料庫
-B,--databases 指定匯出的資料庫
--no-data 只匯出資料庫定義
--no-create-info 只匯出資料
--routines 匯出procedure

備份資料庫test01

mysqldump -uroot -p --databases test01 > test01.sql

查看資料庫

Show databases;

移除資料庫test01;

drop database test01;
show databases;

https://ithelp.ithome.com.tw/upload/images/20200912/20129969GUtKPaYfiX.png

還原資料庫test01

mysql –uroot –p < test01.sql

資料庫test01已還原

show databases;

https://ithelp.ithome.com.tw/upload/images/20200912/20129969qsuj1TFDbF.png

mysqlimport(資料導入工具)

用來匯入select …into outfile指令匯出的資料。
指令:
mysqlimport –uroot –p [db_name] [file_path]

利用select …into outfile 匯出資料

查看原始資料表t1

mysql> select * from t1;

https://ithelp.ithome.com.tw/upload/images/20200912/20129969lpZeWos1pn.png
匯出資料到/mysql底下

mysql> select * from t1 into outfile '/mysql/t1.txt';

查看檔案t1.txt

cat /mysql/t1.txt

https://ithelp.ithome.com.tw/upload/images/20200912/20129969pviq90JRb1.png
刪除資料表t1資料

delete from t1
select * from t1;

https://ithelp.ithome.com.tw/upload/images/20200912/20129969O5guTU1NBW.png

匯入t1原始資料

mysqlimport -uroot -p test01 /mysql/t1.txt

檢查資料表t1

select * from t1;

https://ithelp.ithome.com.tw/upload/images/20200912/20129969ShumiuHRis.png

資料還原完成

以上是MySQL常用的工具,有沒有感覺比較便利呢!


上一篇
《Day9》MySQL 權限與安全性
下一篇
《Day11》認識MySQL索引
系列文
一名合格的DBA要從底層一步步爬起30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言