MySQL命令行SQL脚本的导入导出小结(数据库的备份与还原)
1.设置环境变量
要想在命令行下各处都能执行mysql命令,必须在系统变量Path中添加mysql的命令所在的目录。例如我安装的是集成PHP环境的mysql,在D盘xampps下,则我需要将“;D:\xampps\mysql\bin”添加到Path的最后面。如下图所示:
如果不设置环境变量,只能进入到“D:\xampps\mysql\bin”目录下执行mysql命令。
2.命令行导入
方法一:未连接数据库时方法
语法格式:mysql -h ip -u userName -p dbName < sqlFilePath (最后没有分号)
-h : 数据库所在的主机。如果是本机,可以使用localhost,或者省略此项;
-u : 连接数据库用户名。
-p : 连接数据库密码。出于安全考虑,一般不在-p之后直接写出明文的密码。整个命令回车之后,数据库会要求输入密码,那个时候再输入密码将以**的形式显示出来。有一定的保护作用。
dbName : 要使用的具体的某个数据库。这个不是必须的,如果sql脚本中没有使用“use dbName”选择数据库,则此处必须制定数据库;如果使用了”use dbName”,则可以省略。
sqlFilePath : sql脚本的路径。如我将sql脚本放在了D盘,我的sql脚本的名字是”test_sql.sql”。则路径为”D:\test_sql.sql”。
命令执行情况如下图所示:
方法二:已连接数据库时方法
语法格式:source sqlFilePath(后面没有分号)
sqlFilePath : sql脚本的路径。如我将sql脚本放在了D盘,我的sql脚本的名字是”test_sql.sql”。则路径为”D:\test_sql.sql”。
命令执行情况如下图所示:
上图中,第一次执行没有成功,因为在sql脚本中没有使用use语句指定数据库,所以需要先指定数据库。
3.命令行导出
导出某个数据库:
mysqldump -u root -p dbName > sqlFilePath
导出多个数据库:
mysqldump -u root -p –add-drop-database –databases dbName1 dbName2… > sqlFilePath
–add-drop-database : 该选项表示在创建数据库的时候先执行删除数据库操作
–database : 该选项后面跟着要导出的多个数据库,以空格分隔导出某个数据库的某个表:
mysqldump -u root -p dbName tableName > sqlFilePath
只导出数据库结构,不带数据:
mysqldump -u root -p -d dbName > sqlFilePath
-d : 只备份结构,不备份数据。也可以使用”–no-data”代替”-d”,效果一样。
导出命令执行情况如下图所示:
关于mysqldump,还有非常多的可选项,例如备份视图、触发器,按照指定条件备份数据等。更多的选项请参考下面的文章:
http://blog.csdn.net/zyz511919766/article/details/12853133
http://www.cnblogs.com/lmule/archive/2010/09/27/1837023.html
http://www.cnblogs.com/qq78292959/p/3637135.html
MySQL命令行SQL脚本的导入导出小结(数据库的备份与还原)的更多相关文章
- mysql命令行备份方法
一.mysql备份 1.备份命令 格式:mysqldump -h主机IP -P端口 -u用户名 -p密码 --database 数据库名 > 文件名.sql # 本地备份可以不添加端口和主机IP ...
- PL/SQL Developer导入导出Oracle数据库方法
前一篇博客介绍了Navicat工具备份Oracle的方法.这篇博客介绍一下使用PL/SQL Developer工具导入导出Oracle数据库的方法. PL/SQL Developer是Oracle数据 ...
- PL/SQLDeveloper导入导出Oracle数据库方法
前一篇博客介绍了Navicat工具备份Oracle的方法,这篇博客介绍一下使用PL/SQL Developer工具导入导出Oracle数据库的方法. PL/SQL Developer是Oracle数据 ...
- SQL Serever学习12——数据库的备份和还原
公司的服务器奔溃了,事先没相应的保护措施,使得公司遭到了较大损失,为了以后不再出现类似事件,在系统中引入备份机制,使得数据库被破坏后损失降到最低. 数据的导出和导入 数据转换服务 数据转换服务DTS( ...
- mysql命令行导入sql脚本中文变问号问题
之前一直用工具连接mysql虽然小问题不断也都无伤大雅,最近做金融云项目,只能通过服务器的内网访问数据库,也就是说只能在linux下通过命令行访问,在导入中文的时候发现都变成问号了,经过查询资料解决, ...
- mysql命令行的导入导出sql,txt,excel(都在linux或windows命令行操作)(转自筑梦悠然)
原文链接https://blog.csdn.net/wuhuagu_wuhuaguo/article/details/73805962 Mysql导入导出sql,txt,excel 首先我们通过命令行 ...
- (转)MySQL命令行--导入导出数据库
MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Se ...
- MySQL 命令行导出、导入Select 查询结果
<!-- 环境: Windows 2003 SP2 + MySQL5.5.28 Author: 博客园小dee --> 有的时候需要把在一张表中用 select 语句查询出来的结果保存到另 ...
- MYSQL 命令行导入导出数据库文件
MYSQL命令行导入数据库 1.首先通过命令行进入到mysql安装目录的bin目录下,比如我输入的命令为: cd E:\MySQL\MySQL Server 5.5\bin,输入如下命令: mysql ...
随机推荐
- Oracle中如何导出存储过程、函数、包和触发器的定义语句?如何导出表的结构?如何导出索引的创建语句?
Oracle中如何导出存储过程.函数.包和触发器的定义语句?如何导出表的结构?如何导出索引的创建语句? QQ群里有人问:如何导出一个用户下的存储过程? 麦苗答:方法有多种,可以使用DBMS_MET ...
- eclipse下如何使用Hibernate反转工程生与数据库对应的实体类和映射文件(以MySQL为例)
首先需要为eclipse添加对Hibernate的支持(也就是下载的Hibernate中的jar包),下载方法另查,这里不多做阐述. 想要使用反转工程,首先要下载Hibernate反转工程的插件Jbo ...
- SQL*Plus工具使用 sqlplus / as sysdba登录
A: 正常情况下 [oracle@hukou admin]$ sqlplus / as sysdba Copyright (c) 1982, 2013, Oracle. All rights res ...
- MySQL 5.7 基于复制线程SQL_Thread加快恢复的尝试
1. MySQL 数据恢复常用办法 MySQL恢复的方法一般有三种: 1. 官方推荐的基于全备+binlog , 通常做法是先恢复最近一次的全备,然后通过mysqlbiinlog --start-po ...
- 修改 iOS AppIcon
有一次看到亚马逊的客户端打开后,就提示 icon 改变了,回桌面一看,竟然真的变了.然后就上网搜索是怎么实现的,参照着写了一个小 demo ,权当笔记. 首先,导入图片到项目的中,如下图.不要导入到 ...
- C#利用微软企业库Enterprise Library配置mysql数据库
在C#项目中,很多时候到要用到Enterprise Library.这里只是用一个很简单的小例子来演示一下Enterprise Library在VS2010中操作MySQL数据库的流程. 1,利用En ...
- Linux服务器断电导致挂载及xfs文件损坏的修复方法
系统文件损坏后进入紧急修复模式,无法进行维护工作 welcome to emergency mode!after logging in ,type "journalctl -xb" ...
- Docker入门之--基础知识
1.先是在Mac上安装. 按照这两个就可以很简单的完成 https://docs.docker.com/docker-for-mac/ https://docs.docker.com/docker-f ...
- TopCoder SRM 566 Div 1 - Problem 1000 FencingPenguins
传送门:https://284914869.github.io/AEoj/566.html 题目简述: 平面上有中心在原点,一个点在(r,0)处的正n边形的n个顶点.平面上还有m个企鹅,每个企鹅有一个 ...
- delete和delete[]的区别(转载)
一直对C++中的delete和delete[]的区别不甚了解,今天遇到了,上网查了一下,得出了结论.做个备份,以免丢失. C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete ...