用shell编写一个脚本用于清理2023以前的多数据库多表的数据
时间: 2024-02-16 11:03:22 浏览: 62
shell 脚本对数据库定时备份
好的,我来为您提供一个清理多数据库多表数据的Shell脚本,该脚本将清理2023年以前的数据。
```
#!/bin/bash
# 数据库信息
DB_USER="your_db_username"
DB_PASSWORD="your_db_password"
DB_HOST="your_db_host"
DB_NAME="your_db_name"
# 表信息
TABLE_NAMES=("table1" "table2" "table3")
# 清理数据的时间戳
CLEAN_TIMESTAMP=$(date -d "2023-01-01" +%s)
# 遍历每一个表进行数据清理
for TABLE_NAME in "${TABLE_NAMES[@]}"
do
echo "Cleaning data in table $TABLE_NAME ..."
# 使用MySQL的DELETE语句进行数据清理
mysql -u $DB_USER -p$DB_PASSWORD -h $DB_HOST -D $DB_NAME -e "DELETE FROM $TABLE_NAME WHERE timestamp < $CLEAN_TIMESTAMP"
echo "Data in table $TABLE_NAME cleaned."
done
echo "All data cleaned."
```
您只需要将脚本中的 `your_db_username`、`your_db_password`、`your_db_host`、`your_db_name` 替换成您自己的数据库信息,`table1`、`table2`、`table3` 替换成您要清理的表名,保存脚本并执行即可。
阅读全文