做商铺最好的网站,小程序商城模板下载,成都网站建设、,深圳全网推广公司导出数据库
将指定数据库实例#xff08;MYSQL_HOST、MYSQL_PORT、MYSQL_USER、MYSQL_PASSWORD#xff09;中的所有数据库#xff08;表结构、数据#xff09;导出到指定目录#xff08;BACKUP_DIR#xff09;下的多个单独的SQL脚本#xff0c;每个SQL脚本名称即为数据…导出数据库
将指定数据库实例MYSQL_HOST、MYSQL_PORT、MYSQL_USER、MYSQL_PASSWORD中的所有数据库表结构、数据导出到指定目录BACKUP_DIR下的多个单独的SQL脚本每个SQL脚本名称即为数据库名如my_db.sql脚本的数据库名为my_db且排除内置的mysql、sys、information_schema、performance_schema数据库具体导出脚本backup.sh内容如下
#!/bin/bash# MySQL credentials
MYSQL_USERroot
MYSQL_PASSWORDmyPassw
MYSQL_HOST127.0.0.1
MYSQL_PORT3306# Directory for backups
BACKUP_DIRbackup-dir# Create backup directory if it doesnt exist
mkdir -p $BACKUP_DIR# Loop through each database and back it up
for db in $(mysql -h $MYSQL_HOST -u $MYSQL_USER -p$MYSQL_PASSWORD -P $MYSQL_PORT -e SHOW DATABASES; | grep -Ev Database|mysql|sys|information_schema|performance_schema); doecho $BACKUP_DIR/$db.sqlmysqldump -h $MYSQL_HOST -u $MYSQL_USER -p$MYSQL_PASSWORD -P $MYSQL_PORT $db $BACKUP_DIR/$db.sql
done导入数据库
将备份目录SQL_DIR下的多个sql脚本恢复到指定数据库实例MYSQL_HOST、MYSQL_PORT、MYSQL_USER、MYSQL_PASSWORD中每个sql脚本名称即为数据库名如my_db.sql脚本的数据库名为my_db批量建库、导入SQL脚本的restore.sh内容如下
#!/bin/bash# MySQL credentials
MYSQL_USERroot
MYSQL_PASSWORDmyPassw
MYSQL_HOST127.0.0.1
MYSQL_PORT33306# Directory containing SQL scripts
SQL_DIRbackup-dir# Loop through each SQL file in the directory
for sql_file in $SQL_DIR/*.sql; do# Extract the database name from the file namedb_name$(basename $sql_file .sql)# Create the database with specified character set and collationecho Creating database: $db_namemysql -u $MYSQL_USER -p$MYSQL_PASSWORD -h $MYSQL_HOST -P $MYSQL_PORT -e CREATE DATABASE IF NOT EXISTS \$db_name\ CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;# Import the SQL file into the databaseecho Importing data into database: $db_namemysql -u $MYSQL_USER -p$MYSQL_PASSWORD -h $MYSQL_HOST -P $MYSQL_PORT $db_name $sql_file
doneecho All databases created and data imported successfully.