方法一,直接打包mysql数据库下的data目录中你要备份的数据库名字的目录,然后恢复也可以直接替换了
方法二,利用xcopy定时备份了,代码如下
把下面代码保存.bat文件
代码如下 | 复制代码 |
@echo off |
另存为db_back.bat。该bat文件的意思是先停止mysql服务,然后使用xcopy命令,将源数据库所在文件夹整个复制到D:/db_backup下,并且以当天日期命名该文件。
我们在cmd下测试一下这个bat能否运行。"运行"->cmd,输入cd c:/定位到bat文件所在目录。输入back_job.bat.结果如下
方法三,利用phpmyadmin备份还原,这里我就不介绍了。
方法四,利用mysqldump 命令进行备份
我通常使用以下 SQL 来备份 MyISAM 表:
代码如下 | 复制代码 |
/usr/local/mysql/bin/mysqldump -uyejr -pyejr --default-character-set=utf8 --opt --extended-insert=false --triggers -R --hex-blob -x db_name > db_name.sql |
使用以下 SQL 来备份 Innodb 表:
/usr/local/mysql/bin/mysqldump -uyejr -pyejr --default-character-set=utf8 --opt --extended-insert=false
--triggers -R --hex-blob --single-transaction db_name > db_name.sql
1.2 还原
用 mysqldump 备份出来的文件是一个可以直接倒入的 SQL 脚本,有两种方法可以将数据导入。
•直接用 mysql 客户端
例如:
代码如下 | 复制代码 |
/usr/local/mysql/bin/mysql -uyejr -pyejr db_name < db_name.sql |
•用 SOURCE 语法
其实这不是标准的 SQL 语法,而是 mysql 客户端提供的功能,例如:
SOURCE /tmp/db_name.sql;
这里需要指定文件的绝对路径,并且必须是 mysqld 运行用户(例如 nobody)有权限读取的文件
备份MySQL数据库的命令
代码如下 | 复制代码 |
mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql |
备份MySQL数据库为带删除表的格式
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。
代码如下 | 复制代码 |
mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sql |
直接将MySQL数据库压缩备份
代码如下 | 复制代码 |
mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz |
备份MySQL数据库某个(些)表
代码如下 | 复制代码 |
mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql |
同时备份多个MySQL数据库
代码如下 | 复制代码 |
mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql |
仅仅备份数据库结构
代码如下 | 复制代码 |
mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql |
备份服务器上所有数据库
代码如下 | 复制代码 |
mysqldump –all-databases > allbackupfile.sql |
还原MySQL数据库的命令
代码如下 | 复制代码 |
mysql -hhostname -uusername -ppassword databasename < backupfile.sql |
还原压缩的MySQL数据库
代码如下 | 复制代码 |
gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename |
将数据库转移到新服务器
代码如下 | 复制代码 |
mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename |
利用php 来备份mysql数据库
代码如下 | 复制代码 |
mysql_connect('localhost', 'test', '123456'); function copy_table($from, $to) { function table_exists($tablename, $database = false) { |