把系统用户的用户名、GID、UID添加到数据库中
mysql -e 'create table sysuser(uname char(30) unique not null,uuID int not null,ugID int not null )'
for in for `cat /etc/passwd`
do
$un=`echo $0 | awk -F: '{print $1}'`
$uu=`echo $0 | awk -F: '{print $2}'`
$ug=`echo $0 | awk -F: '{print $4}'`
mysql -e 'insert into sysuser value(\'$un\',$uu,$ug)'
周一至周六增量备份 周日全备
设置crontab任务,每天执行备份脚本
shell> crontab -e
#每个星期日完全备份脚本
0 0 * * 0 /root/MySQLBackup/mysqlFullBackup.sh >/dev/null 2>&1
#周一到周六做增量备份
0 0 * * 1-6 /root/MySQLBackup/mysqlDailyBackup.sh >/dev/null 2>&1
# 定义变量,请根据具体情况修改
# 定义脚本目录
scriptsDir=`pwd`
# 定义数据库目录
mysqlDir=/usr/local/mysql
# 定义用于备份数据库的用户名和密码
user=root
userPWD=111111
# 定义备份目录
dataBackupDir=/tmp/mysqlbackup
# 定义备份日志文件
logFile=$dataBackupDir/mysqlbackup.log
DATE=`date -I`
echo "" > $eMailFile
echo $(date +"%y-%m-%d %H:%M:%S") >> $eMailFile
cd $dataBackupDir
# 定义备份文件名
dumpFile=mysql_$DATE.sql
GZDumpFile=mysql_$DATE.sql.tar.gz
# 使用mysqldump备份数据库,请根据具体情况设置参数
$mysqlDir/bin/mysqldump -u$user -p$userPWD \
--opt --default-character-set=utf8 --extended-insert=false \
--triggers -R --hex-blob --all-databases \
--flush-logs --delete-master-logs \
--delete-master-logs \
-x > $dumpFile
mysql备份与恢复
系统运行中,增量备份与整体备份。
例:每周日整体备份一次,周一至周六备份当天。
如果周五出了问题,可以用周日的整体+周一、二、三、四来恢复。
备份的工具
有第三方的收费备份工具,
目前我们所学的是系统自带的备份功能,mysqldump。
mysqldump可以导出
库
(1)启动cmd
mysqldump -uroot -p1234 db_library>d:/20120724.sql
(可以直接用mysqldump这个命令是因为设置了环境变量)
表
例1:导出mugua库下面的account表
mysqldump -u用户名 -p密码 库名 表1 表2 表3>地址/备份文件名称
导出的是建表语句及insert语句
例2:如何导出一个库下面的所有表?
mysqldump -u用户名 -p密码 库名 表1 表2 表3>地址/备份文件名称
例3:如何导出以库为单位导出?
mysqldump -uroot -p1234 -B mugua php > d:/mandp.sql
例4:如何导出所有库?
mysqldump -uroot -p1234 -A > d:/all.sql
恢复:
(1)登陆到mysql命令行
对于库级的备份文件
mysql>source 备份文件地址
mysql备份与恢复
系统运行中,增量备份与整体备份。
例:每周日整体备份一次,周一至周六备份当天。
如果周五出了问题,可以用周日的整体+周一、二、三、四来恢复。
备份的工具
有第三方的收费备份工具,
目前我们所学的是系统自带的备份功能,mysqldump。
mysqldump可以导出
库
(1)启动cmd
mysqldump -uroot -p1234 db_library>d:/20120724.sql
(可以直接用mysqldump这个命令是因为设置了环境变量)
表
例1:导出mugua库下面的account表
mysqldump -u用户名 -p密码 库名 表1 表2 表3>地址/备份文件名称
导出的是建表语句及insert语句
例2:如何导出一个库下面的所有表?
mysqldump -u用户名 -p密码 库名 表1 表2 表3>地址/备份文件名称
例3:如何导出以库为单位导出?
mysqldump -uroot -p1234 -B mugua php > d:/mandp.sql
例4:如何导出所有库?
mysqldump -uroot -p1234 -A > d:/all.sql
恢复:
(1)登陆到mysql命令行
对于库级的备份文件
mysql>source 备份文件地址
mysql>source d:/mandp.sql
对于表级的备份文件
mysql>use 库名
mysql>source 备份文件地址
mysql备份与恢复
系统运行中,增量备份与整体备份。
例:每周日整体备份一次,周一至周六备份当天。
如果周五出了问题,可以用周日的整体+周一、二、三、四来恢复。
备份的工具
有第三方的收费备份工具,
目前我们所学的是系统自带的备份功能,mysqldump。
mysqldump可以导出
库
(1)启动cmd
mysqldump -uroot -p1234 db_library>d:/20120724.sql
(可以直接用mysqldump这个命令是因为设置了环境变量)
表
例1:导出mugua库下面的account表
mysqldump -u用户名 -p密码 库名 表1 表2 表3>地址/备份文件名称
导出的是建表语句及insert语句
例2:如何导出一个库下面的所有表?
mysqldump -u用户名 -p密码 库名 表1 表2 表3>地址/备份文件名称
例3:如何导出以库为单位导出?
mysqldump -uroot -p1234 -B mugua php > d:/mandp.sql
例4:如何导出所有库?
mysqldump -uroot -p1234 -A > d:/all.sql
恢复:
(1)登陆到mysql命令行
对于库级的备份文件
mysql>source 备份文件地址
mysql>source d:/mandp.sql
对于表级的备份文件
mysql>use 库名
mysql>source 备份文件地址
mysql备份与恢复
系统运行中,增量备份与整体备份。
例:每周日整体备份一次,周一至周六备份当天。
如果周五出了问题,可以用周日的整体+周一、二、三、四来恢复。
备份的工具
有第三方的收费备份工具,
目前我们所学的是系统自带的备份功能,mysqldump。
mysqldump可以导出
库
(1)启动cmd
mysqldump -uroot -p1234 db_library>d:/20120724.sql
(可以直接用mysqldump这个命令是因为设置了环境变量)
表
例1:导出mugua库下面的account表
mysqldump -u用户名 -p密码 库名 表1 表2 表3>地址/备份文件名称
导出的是建表语句及insert语句
例2:如何导出一个库下面的所有表?
mysqldump -u用户名 -p密码 库名 表1 表2 表3>地址/备份文件名称
例3:如何导出以库为单位导出?
mysqldump -uroot -p1234 -B mugua php > d:/mandp.sql
例4:如何导出所有库?
mysqldump -uroot -p1234 -A > d:/all.sql
恢复:
(1)登陆到mysql命令行
对于库级的备份文件
mysql>source 备份文件地址
mysql>source d:/mandp.sql
对于表级的备份文件
mysql>use 库名
mysql>source 备份文件地址
mysql备份与恢复
系统运行中,增量备份与整体备份。
例:每周日整体备份一次,周一至周六备份当天。
如果周五出了问题,可以用周日的整体+周一、二、三、四来恢复。
备份的工具
有第三方的收费备份工具,
目前我们所学的是系统自带的备份功能,mysqldump。
mysqldump可以导出
库
(1)启动cmd
mysqldump -uroot -p1234 db_library>d:/20120724.sql
(可以直接用mysqldump这个命令是因为设置了环境变量)
表
例1:导出mugua库下面的account表
mysqldump -u用户名 -p密码 库名 表1 表2 表3>地址/备份文件名称
导出的是建表语句及insert语句
例2:如何导出一个库下面的所有表?
mysqldump -u用户名 -p密码 库名 表1 表2 表3>地址/备份文件名称
例3:如何导出以库为单位导出?
mysqldump -uroot -p1234 -B mugua php > d:/mandp.sql
例4:如何导出所有库?
mysqldump -uroot -p1234 -A > d:/all.sql
恢复:
(1)登陆到mysql命令行
对于库级的备份文件
mysql>source 备份文件地址
mysql>source d:/mandp.sql
对于表级的备份文件
mysql>use 库名
mysql>source 备份文件地址
mysql>source d:/mandphp.sql;
(2)不登陆到mysql命令行
针对库级的备份文件
mysql -u用户名 -p密码 < 库级备份文件地址
针对表级的备份
mysql -u用户名 -p密码 库名 < 表级备份文件地址