内容提示:sqldump -u wcnc -p smgp_apps_wcnc >wcnc.sql 2.导出一个表 mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc users>wcnc_users.sql 3.导出一个数据库结构 mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc>d:wcnc_db.sql -d 没有数据 --add-drop-tab...
1.导出整个数据库mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc >wcnc.sql
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc users>wcnc_users.sql
3.导出一个数据库结构
mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc>d:wcnc_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
4.导入数据库
常用source 命令
进入mysql数据库控制台,
如mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:wcnc_db.sql
5.
-------------------------------------------------------------------------------------------------
备份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 databasenamespecific_table1 specific_table2 >backupfile.sql
同时备份多个MySQL数据库
mysqldump -hhostname -uusername -ppassword –databases databasename1databasename2 databasename3 >multibackupfile.sql
仅仅备份数据库结构
mysqldump –no-data –databases databasename1 databasename2databasename3 > 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
--------------------------------------------------------------------------------------------------
上面为导入导出*.sql文件的操作。
MySQL数据库还可以通过拷贝来备份数据库文件,下面介绍一下注意事项。
Mysql安装后在data文件夹中有4种文件.frm .MYD .MYI .opt
*.frm 是描述了表的结构;
*.MYD 保存了表的数据记录;
*.MYI 则是表的索引;
*.opt 记录数据库的选项,数据库的字符集设置 (character_set_database和collation_database
);
只要在mysql的安装文件中找到data文件夹,然后在里面建立一个文件夹,比如test。这个test其实就对应着数据库的名称,所以,你想要起什么样的数据库名称就把文件夹起什么名字。
然后把.frm文件导进去。注意还要在data目录下加入ib_logfile0,ib_logfile1,ibdata1这几个文件。
要不然在mysql里只能找到表名(其实一个.frm文件就是对应的数据库中的一个表。)
而不能对其进行操作。
如果查询的时候出现某某表不存在的问题,在确认.frm ,db.opt文件完整的情况下,那么这种表使用的应该是innodb表引擎,应该将数据目录中的innodb数据文件(认ibdata1)
说明:
比如你原来的mysql中有一些数据库了。可以先把原来的data改名字备份在同一目录下。(可能要改名字系统会提示有另一程序在使用这个文件,这个时候可以到控制面板的服务里面,把mysql的服务先关掉,等改完名字,把东西都导进去后再开服务)
然后另建一个data,把在里面建好数据库名把.frm导进去。
--------------------------------------------------------------------------------------------------
停止服务可以通过管理工具里面的服务来停,或者用cmd 打开dos界面输入net stop mysql,启动用net startmysql;
只要用旧的ibdata1覆盖原来的,再把相关的数据库copy过去,然后重新启动数据库,就ok了,进入以后要是对表不能操作可能是数据表已经损坏了。(如果不行报1146错 ,建议重启一下机器在看看)
ib_logfile0,ib_logfile1好象也可以不用覆盖,不然有时候mysql数据库启动不了了,报1067错误。
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。