在提問之前請查詢一下以前的貼子吧.備份:  mysqldump -uUSERNAME -pYOURPASSWORD DBNAME > YOURFILENAME.sql 
還原備份: mysql -uuUSERNAME -pYOURPASSWORD DBNAME < BACKUPFILENAME.sql 注:請注意大寫的是你要輸入的備份和還原備份的指令都有很多選項,具體用法請查詢 Mysql Manual

解决方案 »

  1.   

    同意楼上的方法
    只是在程序中用不太方便我在程序中是将数据读出来存成一个txt(或ini)文件
    文件格式是:
    insert into tableName(1,2,3,4...) values('数据1','数据2','数据3',.....);
    insert into tableName(1,2,3,4...) values('数据1','数据2','数据3',.....);
    insert into tableName(1,2,3,4...) values('数据1','数据2','数据3',.....);
    ...............
    恢复时只需读出每行内容
    执行一下就行了
    就是数据如果太多的话
    速度慢些谁有更好的方法
    请教....
      

  2.   

    如果你想可视化的完成这些操作,那么就到www.mysql.com去下一个mysql 管理软件就行了
      

  3.   

    因为MySQL表作为文件存储,做一个备份是容易的。为了得到一个一致的备份,在相关的表上做一个LOCK TABLES。你只需一个读锁定;当你在数据库目录中做文件的一个拷贝时,这允许其他线程继续查询该表。如果你想要做一个SQL级的备份,你可以SELECT INTO OUTFILE。备份一个数据库的另一个方法是使用mysqldump程序: 为你的数据库做一个完整的备份:
    shell> mysqldump --tab=/path/to/some/dir --opt --full你也可以简单地拷贝所有的表文件(“*.frm”、“*.MYD”和“*.MYI”文件),只要服务器不在更新任何东西。停止mysqld如果它正在运行,然后以--log-update选项启动它。你将得到一个名为“hostname.n”形式的日志文件, 这里n是随着你每次执行mysqladmin refresh或mysqladmin flush-logs、FLUSH LOGS语句、或重启服务器而递增的一个数字。这些日志文件向你提供了在你执行mysqldump处后面进行的复制数据库改变的所需信息。 
    如果你必须恢复一些东西,尝试首先用myisamchk -r恢复你的表。这应该处理所有情况的99.9%。如果myisamchk失败,尝试下列过程: 恢复原来的mysqldump备份。 
    执行下列命令以再次运行更新日志中的更改: 
    shell> ls -1 -t -r hostname.[0-9]* | xargs cat | mysqlls被用来以正确的顺序得到所有的日志文件。 你也可以与SELECT * INTO OUTFILE 'file_name' FROM tbl_name做有选择的备份并且用LOAD DATA INFILE 'file_name' REPLACE ...恢复。为了避免重复记录,在表中你需要一个PRIMARY KEY或UNIQUE键。当在唯一键值上一个新记录与一个老记录重复时,REPLACE关键词使得老记录用一个新记录替代。