mysqldump是MySQL内置的工具,许可用户将数据库指定不同的选项备份到文件、做事器,乃至是压缩gzip文件中。mysqldump实用程序灵巧,快速,可实行高等备份,并接管各种命令行参数,用户可通过这些参数来变动备份数据库的办法。
Windows操作系统中的c:\mysqlbin和Unix / Linux系统的/usr/local/mysql/bin中可找到mysqldump实用程序,将不同的参数通报给mysqldump实用程序,就可以以下形式利用。
mysqldump ---user [user name] ---password= [password]
[database name] > [dump file]
手动备份,只须要MySQL数据库的密码,利用p选项作为密码,将命令发送到mysqldump。例如,要备份所有数据库,请利用all databases:
Mysqldump –u USER –p –all-databases> /mnt/backups/all
利用MySQLpump进行MySQL备份
MySQLpump类似于mysqldump,天生支持并行化的逻辑备份。MySQLpump以并行办法为多个数据库实行所有与转储干系的操作,这大大减少了实行逻辑备份所花费的韶光。
但是,MySQLpump不备份performance_schema,sys schema和ndbinfo,因此您必须利用 – databases来命名它们,它也不会转储用户帐户定义。
Shell> mysqlpump –exclude-databases=% --users
利用AutoMySQLBackup进行MySQL备份
AutoMySQLBackup可以备份做事器上的数据库,无论是单个、多个还是所有数据库。每个数据库都保存在一个单独的文件中,可以压缩该文件。如何实行呢?只需下载一个文件bash脚本,保存并根据自己的喜好自定义,使其可实行。
手动运行脚本:./automysqlbackup.sh.2.5
由于此脚本不支持将备份文件夹保存到远程位置,因此可能须要安装远程空间或利用其他技能远程上传文件。
利用mydumper进行MySQL备份
Mydumper是一个实用的软件程序,可以担保快速可靠的多线程MySQL备份过程。众所周知,Mydumper可以很好地处理大型数据库,供应并行性。用户须要创建如下所示的备份,然后将变量($)更换实变量,压缩文件夹并将其放在首选位置。
Mydumper \
--database=$DB_NAME \
--host=$DB_HOST \
--user=$DB_PASS \
--rows=500000 \
--compress \
--build-empty-files \
--compress-protocol
快速和自动备份
MySQL自动备份与ottomatik
Ottomatik利用备用降落伞为您的MySQL数据库供应了极好的备份办理方案。Ottomatik支持云或本地做事器,通过安装脚本,它会自动安装连接到Linux做事器的SSH密钥,还可以为备份作业选择多个做事器。
利用PHPMyAdmin进行MySQL备份
PHPMyAdmin是一个盛行的运用程序,用于管理MySQL数据库,可以免费利用。很多做事供应商都利用PHPMyAdmin,有可能你自己都安装了却不自知。
备份数据库所须要做的便是打开PHPMyAdmin,选择文件或文件夹,然后单击“导出”链接,其余,也有“另存为”和“压缩”等在本地保存数据的选项。
利用文件系统快照进行MySQL备份
可以利用Veritas,LVM或ZFS等文件系统进行系统快照。要利用文件系统快照,从客户端程序实行具有读锁定的刷新表,然后从另一个shell实行运行mount vxfs snapshot。从第一个客户端解锁表,然后将文件从快照复制到目标文件夹,稍后卸载快照。
通过复制表文件进行备份
通过将表文件复制为.MYD,.MYI文件来备份MyISAM表,利用时须要停滞做事器或锁定并刷新干系表:
FLUSH TABLES tbl_list WITH READ LOCK;
在数据库中复制文件时,读锁许可其他客户机连续查询表,而刷新则确保在备份过程之前将所有活动索引页写入磁盘。
无论完备备份还是增量备份,MySQL数据库备份都是必不可少的,而且随着数据库大小的增加,您可能还须要变动备份策略。