搜索
首页数据库mysql教程MYSQL 数据库导入导出的实现

MYSQL 数据库导入导出的实现

Jun 07, 2016 pm 03:46 PM
mysql实现导入导出数据数据库概述

1. 概述 MySQL数据库的导入,有两种方法: 1) 先导出数据库SQL脚本,再导入; 2) 直接拷贝数据库目录和文件。 在不同操作系统或MySQL版本情况下,直接拷贝文件的方法可能会有不兼容的情况发生。 所以一般推荐用SQL脚本形式导入。下面分别介绍两种方法。 2.

1. 概述 
MySQL数据库的导入,有两种方法: 
1) 先导出数据库SQL脚本,再导入; 
2) 直接拷贝数据库目录和文件。 

在不同操作系统或MySQL版本情况下,直接拷贝文件的方法可能会有不兼容的情况发生。 
所以一般推荐用SQL脚本形式导入。下面分别介绍两种方法。 

2. 方法一 SQL脚本形式 
操作步骤如下: 
2.1. 导出SQL脚本 
在原数据库服务器上,可以用phpMyAdmin工具,或者mysqldump(mysqldump命令位于mysql/bin/目录中)命令行,导出SQL脚本。 
2.1.1 用phpMyAdmin工具 
导出选项中,选择导出“结构”和“数据”,不要添加“Drop DATABASE”和“Drop TABLE”选项。 
选中“另存为文件”选项,如果数据比较多,可以选中“gzipped”选项。 
将导出的SQL文件保存下来。 

2.1.2 用mysqldump命令行 
命令格式 
mysqldump -u用户名 -p 数据库名 > 数据库名.sql 
范例: 
mysqldump -uroot -p abc > abc.sql 
(导出数据库abc到abc.sql文件) 

提示输入密码时,输入该数据库用户名的密码。 

2.2. 创建空的数据库 
通过主控界面/控制面板,创建一个数据库。假设数据库名为abc,数据库全权用户为abc_f。 

2.3. 将SQL脚本导入执行 
同样是两种方法,一种用phpMyAdmin(mysql数据库管理)工具,或者mysql命令行。 
2.3.1 用phpMyAdmin工具 
从控制面板,选择创建的空数据库,点“管理”,进入管理工具页面。 
在"SQL"菜单中,浏览选择刚才导出的SQL文件,点击“执行”以上载并执行。 

注意:phpMyAdmin对上载的文件大小有限制,php本身对上载文件大小也有限制,如果原始sql文件 
比较大,可以先用gzip对它进行压缩,对于sql文件这样的文本文件,可获得1:5或更高的压缩率。 
gzip使用方法: 
# gzip xxxxx.sql 
得到 
xxxxx.sql.gz文件。 

2.3.2 用mysql命令行 
命令格式 
mysql -u用户名 -p 数据库名
范例: 
mysql -uabc_f -p abc
(导入数据库abc从abc.sql文件) 

提示输入密码时,输入该数据库用户名的密码。 

3 方法二 直接拷贝 
如果数据库比较大,可以考虑用直接拷贝的方法,但不同版本和操作系统之间可能不兼容,要慎用。 
3.1 准备原始文件 
用tar打包为一个文件 

3.2 创建空数据库 

3.3 解压 
在临时目录中解压,如: 
cd /tmp 
tar zxf mydb.tar.gz 

3.4 拷贝 
将解压后的数据库文件拷贝到相关目录 
cd mydb/ 
cp * /var/lib/mysql/mydb/ 

对于FreeBSD: 
cp * /var/db/mysql/mydb/ 

3.5 权限设置 
将拷贝过去的文件的属主改为mysql:mysql,权限改为660 
chown mysql:mysql /var/lib/mysql/mydb/* 

chmod 660 /var/lib/mysql/mydb/*


备份数据库: 
进入cmd 
导出所有数据库:输入:mysqldump -u [数据库用户名] -p -A>[备份文件的保存路径] 

导出数据和数据结构:输入:mysqldump -u [数据库用户名] -p [要备份的数据库名称]>[备份文件的保存路径] 
例子:mysqldump -u root -p test>d:\test.sql 
注意:此备份只备份数据和数据结构,没有备份存储过程和触发器 

只导出数据不导出数据结构:输入:mysqldump -u [数据库用户名] -p -t [要备份的数据库名称]>[备份文件的保存路径] 

导出数据库中的Events 
输入:mysqldump -u [数据库用户名] -p -E [数据库用户名]>[备份文件的保存路径] 

导出数据库中的存储过程和函数 
mysqldump -u [数据库用户名] -p -R [数据库用户名]>[备份文件的保存路径] 

导入数据库 
mysql -u root -p

恢复备份文件: 
进入MYSQL Command Line Client 
先创建数据库:create database test 注:test是创建数据库的名称 
再切换到当前数据库:use test 
再输入:\. d:/test.sql 或 souce d:/test.sql 

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
您可以使用哪些工具来监视MySQL性能?您可以使用哪些工具来监视MySQL性能?Apr 23, 2025 am 12:21 AM

如何有效监控MySQL性能?使用mysqladmin、SHOWGLOBALSTATUS、PerconaMonitoringandManagement(PMM)和MySQLEnterpriseMonitor等工具。1.使用mysqladmin查看连接数。2.用SHOWGLOBALSTATUS查看查询数。3.PMM提供详细性能数据和图形化界面。4.MySQLEnterpriseMonitor提供丰富的监控功能和报警机制。

MySQL与SQL Server有何不同?MySQL与SQL Server有何不同?Apr 23, 2025 am 12:20 AM

MySQL和SQLServer的区别在于:1)MySQL是开源的,适用于Web和嵌入式系统,2)SQLServer是微软的商业产品,适用于企业级应用。两者在存储引擎、性能优化和应用场景上有显着差异,选择时需考虑项目规模和未来扩展性。

在哪些情况下,您可以选择SQL Server而不是MySQL?在哪些情况下,您可以选择SQL Server而不是MySQL?Apr 23, 2025 am 12:20 AM

在需要高可用性、高级安全性和良好集成性的企业级应用场景下,应选择SQLServer而不是MySQL。1)SQLServer提供企业级功能,如高可用性和高级安全性。2)它与微软生态系统如VisualStudio和PowerBI紧密集成。3)SQLServer在性能优化方面表现出色,支持内存优化表和列存储索引。

MySQL如何处理角色集和碰撞?MySQL如何处理角色集和碰撞?Apr 23, 2025 am 12:19 AM

mySqlManagesCharacterSetsetSandCollat​​ionsyutusututf-8asthEdeFault,允许ConfigurationAtdataBase,table和columnlevels,AndrequiringCarefullageLignmentToavoidMismatches.1)setDefeaultCharactersetTercharactersetEtCollacterSeteTandColletationForAdataBase.2)conformentcollecharactersettersetertersetcollat​​ertersetcollat​​ioncollat​​ion

MySQL中有什么触发器?MySQL中有什么触发器?Apr 23, 2025 am 12:11 AM

MySQL触发器是与表相关联的自动执行的存储过程,用于在特定数据操作时执行一系列操作。1)触发器定义与作用:用于数据校验、日志记录等。2)工作原理:分为BEFORE和AFTER,支持行级触发。3)使用示例:可用于记录薪资变更或更新库存。4)调试技巧:使用SHOWTRIGGERS和SHOWCREATETRIGGER命令。5)性能优化:避免复杂操作,使用索引,管理事务。

您如何在MySQL中创建和管理用户帐户?您如何在MySQL中创建和管理用户帐户?Apr 22, 2025 pm 06:05 PM

在MySQL中创建和管理用户账户的步骤如下:1.创建用户:使用CREATEUSER'newuser'@'localhost'IDENTIFIEDBY'password';2.分配权限:使用GRANTSELECT,INSERT,UPDATEONmydatabase.TO'newuser'@'localhost';3.修正权限错误:使用REVOKEALLPRIVILEGESONmydatabase.FROM'newuser'@'localhost';然后重新分配权限;4.优化权限:使用SHOWGRA

MySQL与Oracle有何不同?MySQL与Oracle有何不同?Apr 22, 2025 pm 05:57 PM

MySQL适合快速开发和中小型应用,Oracle适合大型企业和高可用性需求。1)MySQL开源、易用,适用于Web应用和中小型企业。2)Oracle功能强大,适合大型企业和政府机构。3)MySQL支持多种存储引擎,Oracle提供丰富的企业级功能。

与其他关系数据库相比,使用MySQL的缺点是什么?与其他关系数据库相比,使用MySQL的缺点是什么?Apr 22, 2025 pm 05:49 PM

MySQL相比其他关系型数据库的劣势包括:1.性能问题:在处理大规模数据时可能遇到瓶颈,PostgreSQL在复杂查询和大数据处理上表现更优。2.扩展性:水平扩展能力不如GoogleSpanner和AmazonAurora。3.功能限制:在高级功能上不如PostgreSQL和Oracle,某些功能需要更多自定义代码和维护。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具