MySQL的导入导出
1 导出
1.1 导出脚本和数据
MySQL的导出是利用MySQL安装目录的bin目录下的mysqldump指令来进行的,该命令需要在Windows的cmd命令窗口执行。语法如下:
mysqldump –uusername –ppassword database_name > export_path
如:
mysqldump –uroot –p123 test > D:\\test.sql
如果需要指定导出文件的编码则可以通过参数--default-character-set来指定,如:
mysqldump –uroot –p123 test > D:\\test.sql --default-character-set=utf8
1.2 只导出脚本
上述脚本会连目标库里面的数据一起导出来,但有时候我们可能并不需要导出其中的数据,这个时候我们可以加上参数--no-data。(注意no前面是有两个横杠的)。如:
mysqldump --no-data -uroot -p123 test > D:\\test.sql
1.3 远程导出
有时候我们可能想导出的数据库不是本地的,这个时候我们可以加上参数-h来指定要导出的数据库所在的主机,以及在使用非默认端口(3306)时通过参数-P(大写)指定对应的端口。如:
mysqldump -uroot -p123 -h10.10.10.3 -P3306 test > D:\\test.sql
需要注意的是MySQL默认只允许访问本机的数据库,如果需要访问远程的MySQL,那么远程的MySQL应当开放指定IP访问的权限。如:
grant all privileges on *.* to ‘root’@’10.10.10.3’ identified by ‘123’ with grant option;
也可以把IP换成百分号“%”,表示所有的IP都允许访问,如:
grant all privileges on *.* to ‘root’@’%’ identified by ‘123’ with grant option;
也可以使用如下形式,表示只允许IP以“10.10.10”开始的进行访问,如:
grant all privileges on *.* to ‘root’@’10.10.10.%’ identified by ‘123’ with grant option;
grant指令是需要在MySQL命令窗口执行的,其标准语法如下所示:
grant [privilege1,privilege2] on database_name.table_name to ‘username’@’client_host’ identified by ‘password’ [with grant option];
其表示将某个数据库的某个表的某权限赋予给来自某客户端的某用户,“all privileges”表示将授予所有的权限,“with grant option”表示其是否可以将自身的权限授予他人。如果我们只想授予某用户对某表的select权限,则可以使用如下语句:
grant select on database_name.* to ‘username’@’client_host’ identified by ‘password’;
1.4 导出查询结果
如:
select * from user into outfile 'D:\out.sql'
如果需要导入这个导出结果,则使用:
load data local infile 'D:\out.sql' into table user;
2 导入
导入是在登录以后,在MySQL的命令窗口使用source指令来进行的,语法如下:
source import_path
如:
source D:\\test.sql
如果需要指定导入的编码则可以通过参数--default-character-set来指定。
此外需要注意的是导入必须指定将要导入的数据库,也就是说在执行source导入之前,必须通过use database_name切换到要导入的数据库。
2.1 导入远程数据库
本地导入的话我们可以直接打开MySQL的命令窗口登录数据库进行导入,当然也可以在Windows的cmd命令窗口通过mysql指令来登录到MySQL,mysql指令也是在MySQL安装目录下的bin目录下,其语法如下:
mysql -uusername -ppassword
如:
mysql -uroot -p123
但如果需要导入到远程数据库的话,那么首先我们应当登录到远程数据库,登录到远程数据库的语法是使用mysql指令,但是通过-h参数来指定要登录的远程主机,通过-P(大写)来指定对应的端口。如:
mysql -uroot -p123 -h10.10.10.3 -P3306
之后我们就可以像上面那样进行导入了。
需要注意的是远程导入时,也需要有通过本地客户端的mysql指令登录远程数据库的权限,也就是说也需要像导出那样使用grant指令授予对应的权限。
相关推荐
### MySQL导入导出SQL文件详解 #### 一、概述 MySQL作为一款广泛使用的开源关系型数据库管理系统,在数据管理和维护方面提供了强大的支持。其中,数据的导入导出是日常数据库管理中非常重要的环节之一。本文将详细...
MySQL导入导出技术是数据库管理员(DBA)常用的技术之一,用于备份数据、迁移数据库、数据迁移以及在不同服务器之间共享数据等。该技术在Linux环境下尤为常见,因为MySQL与Linux操作系统经常被一起使用,尤其是在...
mysql导入导出笔记 mysql导入导出是数据库管理中非常重要的一步骤,它可以帮助我们快速地备份和恢复数据库。下面我们将详细介绍mysql导入导出的命令和参数。 mysqldump命令 mysqldump是mysql自带的一种工具,用于...
在Java编程环境中,将MySQL数据库的数据导入到Excel或者将Excel数据导出到MySQL是一项常见的任务。这涉及到对Java处理文件、数据库操作以及处理Excel数据的能力。以下是对这个主题的详细阐述: 1. **Java处理Excel*...
总的来说,"mysql导入导出sql"为MySQL数据库的日常维护提供了一种实用、高效的解决方案,简化了数据库的导入导出流程,使得即使是对编程不太熟悉的用户也能轻松上手。通过这个工具,我们可以更安全、便捷地管理和...
### MySQL导入导出.sql文件详解 #### 一、MySQL命令行模式设置与基本命令介绍 在Windows环境下,要想顺利地通过命令行模式操作MySQL数据库,首先需要正确设置MySQL的环境变量。具体步骤如下: 1. **环境变量设置*...
### MySQL导入导出数据库文件详解 #### 一、引言 在数据库管理中,数据库的导入与导出是一项非常重要的工作。它可以帮助我们备份现有的数据、迁移数据到新的服务器或恢复丢失的数据。对于MySQL这样的关系型数据库...
mysql导入导出命令 source、mysql、 mysqldump
### MySQL导入导出常用命令详解 #### 一、MySQL数据备份与恢复概述 在数据库管理过程中,数据的安全性至关重要。为了防止数据丢失或损坏,通常会定期对数据库进行备份,并在必要时将其恢复到系统中。MySQL提供了...
实现将数据库与excel之间数据的导入导出
在这个过程中,Java通过JDBC(Java Database Connectivity)接口与MySQL进行交互,利用MySQL提供的命令行工具如`mysqldump`和`mysql`来实现数据的导入导出。 首先,我们需要了解JDBC。JDBC是Java平台上的一个标准...
### MySQL导入导出.sql文件详解 #### 一、MySQL命令行模式设置与登录 为了能够有效地执行MySQL数据库的导入导出操作,首先需要确保能够通过命令行方式访问MySQL服务。通常,这涉及到环境变量的配置。 **环境变量...
### MySQL导入导出.sql文件详解 #### 一、MySQL命令行模式设置与登录 为了能够通过命令行方式方便地管理MySQL数据库,首先需要确保MySQL的命令行工具可以在系统的任何位置被调用。这通常需要对系统的环境变量进行...
标题所述的"运行cmd状态下MySQL导入导出.sql文件"是一个关于如何在命令行环境下操作MySQL数据库,进行数据导入和导出的过程。以下是详细的知识点解释: 1. **MySQL命令行模式设置**: - 要在命令行下使用MySQL,...