Shell应用
合服数据处理脚本
```shell #!bin/bash #合服数据处理脚本 HOSTNAME="127.0.0.1" PORT="3306" USERNAME="root" PASSWORD="root" LOGBACKPATH="/data/mysql_backup_ok" #数据源库,即需要做数据处理的库 OriginalDbName="hj_gamelog_20" #目标库 targetDbName="hj_gamelog_6" #@1 先导出数据源库压缩备份 echo "@1 mysqldump original data and zip " mysqldump -tc --skip-comments --skip-add-drop-table --skip-add-locks --no-create-db --no-tablespaces --compact -u${USERNAME} -p${PASSWORD} ${OriginalDbName} > ${LOGBACKPATH}/${OriginalDbName}_original.sql cd ${LOGBACKPATH} zip -rmq ${OriginalDbName}_original.zip ${OriginalDbName}_original.sql #@2 获取所有表 循环表 去掉字段id #这一步看情况 不一定需要 #echo "@2 DROP table id" #SQL="SELECT table_name FROM information_schema.TABLES WHERE TABLE_SCHEMA='${OriginalDbName}'" #declare TABLES=`/usr/bin/mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} -e "${SQL}"` #conDb="/usr/bin/mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${OriginalDbName}" #for tb in ${TABLES} #do # if [ ${tb} != 'table_name' ] # then # ${conDb} -e "ALTER TABLE `${tb}` DROP COLUMN id" # fi #done #@3 导出库 echo "@3 mysqldump data" mysqldump -tc --skip-comments --skip-add-drop-table --skip-add-locks --no-create-db --no-tablespaces --compact -u${USERNAME} -p${PASSWORD} ${OriginalDbName} > ${LOGBACKPATH}/${OriginalDbName}.sql #@4 导入库 echo "@4 source sql" SQL="source ${LOGBACKPATH}/${OriginalDbName}.sql" /usr/bin/mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${targetDbName} -e "${SQL}" #@5 删除文件 echo "@5 rm file" #/usr/bin/rm -rf ${LOGBACKPATH}/${OriginalDbName}.sql ```
顶部
收展
底部
[TOC]
目录
导出数据库脚本
导入数据库脚本
合服数据处理脚本
备份数据库脚本
修改数据库脚本
导出/导入表空间
导出/导入表结构
导出表名
php计划任务
相关推荐
Shell脚本教程