mysql 数据库表备份和还原
Posted 愤怒中的小草
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 数据库表备份和还原相关的知识,希望对你有一定的参考价值。
#!/bin/bash #ip地址 HOST=localhost #用户名 USER=claim #密码 PASSWORD=Pw123456! #数据库名称 DATABASE=claim_oauth2 #备份路径 BACKUP_PATH=/opt/devbacksql/devoauth2/ #备份的表 table="oauth_client_details sys_auth sys_role sys_users sys_user_role sys_role_auth third_party" #日志路径 logfile=/opt/devsql/oauth2.log #当前日期 DATE=`date ‘+%Y%m%d‘` echo $DATE #连接mysql #mysql -h $HOST -u $USER -p$PASSWORD -s claim_oauth2<<EOF #进入到备份目录 #cd $BACKUP_PATH #遍历数据中的表 #for table in $DATABASE #do # echo $table #获取表名 #table=$(mysql -h $HOST -u $USER -p$PASSWORD -s $DATABASE -e "show tables;"|sed ‘1d‘) for tb in $table do #备份文件名 DUMPNAME=""$tb"_"$DATE".sql" mysqldump -h $HOST -u $USER -p$PASSWORD $DATABASE $tb> $BACKUP_PATH$DUMPNAME #if [ $? = 0 ] #then # echo "$DUMPNAME backup Successful!">>$logfile #else # echo "$DUMPNAME backup fail!" >>$logfile #fi done #done #if [ $? = 0 ] # then # echo "backup all tables Successful!">>$logfile # else # echo "backup all tables fail!" >>$logfile #fi exit 1
[[email protected] devsql]# mysql -u claim -pPw123456!
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
解决办法:在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程
以上是关于mysql 数据库表备份和还原的主要内容,如果未能解决你的问题,请参考以下文章
Linux命令:MySQL系列之十二--MySQL备份与还原(针对单张表SELECT备份)