自動將MySQL 表轉儲到單獨的檔案
Mysqldump 提供了一種將MySQL 表格轉儲到單獨檔案的便捷方法。然而,事先知道表名是一個限制。為了解決這個問題,有其他方法可以自動轉儲每個表。
基於腳本的方法:
透過利用 script-fu,您可以查詢資料庫以檢索所有表名並建立執行轉儲的腳本。以下是一些能夠存取MySQL 資料庫的腳本語言:
自包含的Bash 腳本:
提供的Bash 腳本進一步簡化了流程,無需額外的腳本知識:<code class="bash">#!/bin/bash # dump-tables-mysql.sh [ $# -lt 3 ] && echo "Usage: <DB_HOST> <DB_USER> <DB_NAME> [<DIR>]" && exit 1 DB_host= DB_user= DB= DIR= [ -n "$DIR" ] || DIR=. test -d $DIR || mkdir -p $DIR read -sp "DB password: " DB_pass echo echo "Dumping tables into separate SQL command files for database '$DB' into dir=$DIR" tbl_count=0 for t in $(mysql -NBA -h $DB_host -u $DB_user -p$DB_pass -D $DB -e 'show tables') do echo "DUMPING TABLE: $DB.$t" mysqldump -h $DB_host -u $DB_user -p$DB_pass $DB $t | gzip > $DIR/$DB.$t.sql.gz tbl_count=$(( tbl_count + 1 )) done echo "$tbl_count tables dumped from database '$DB' into dir=$DIR"</code>該腳本提示輸入資料庫密碼,將每個表的資料轉儲到單獨的壓縮SQL 檔案中,並將它們儲存在指定目錄中。它處理所有必要的步驟,從檢索表名到建立轉儲檔案。
以上是如何在事先不知道表名的情況下自動將 MySQL 表轉儲到單獨的檔案中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!