`
gaoyu
  • 浏览: 274724 次
  • 来自: 云南大理
社区版块
存档分类
最新评论

MySQL 如何导入导出数据

阅读更多
MySQL 如何导入导出数据

    使用mysqldump:(mysqldump命令位于默认安装C:\Program Files\MySQL\MySQL Server 5.1\bin目录中),mysqldump工具很多方面类似相反作用的工具mysqlimport,它们有一些同样的选项。但mysqldump能够做更多的事情,它可以把整个数据库装载到一个单独的文本文件中。这个文件包含有所有重建您的数据库所需要的SQL命令。这个命令取得所有的模式(Schema,后面有解释)并且将其转换成DDL语法(CREATE语句,即数据库定义语句),取得所有的数据,并且从这些数据中创建INSERT语句,这个工具将您的数据库中所有的设计倒转。因为所有的东西都被包含到了一个文本文件中,这个文本文件可以用一个简单的批处理和一个合适SQL语句导回到MySQL中,这个工具令人难以置信地简单而快速。

   因此,如果您想装载整个数据库test的内容到一个文件中,可以使用下面的命令:
   C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqldump -uroot -p test > d:test_file.txt

   C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqldump -uroot -p test > d:test_file.sql

   执行这二条语句是一样的效果,只是文件后缀名格式不一样,导出的数据信息是完全一样的。

   这个命令也允许您指定一个表进行dump(备份/导出/装载)。如果您只是希望把数据库test中的表friend的整个内容导出到一个文件,可以使用下面的命令:

   C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqldump -uroot -p test friend > d:friend.sql

   如果你想把数据库test中的表,有选择性的选择表导出到一个文件,也可以使用下面的命令:

  C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqldump -uroot -p test friend pet telephone owner vote >d:my2009.sql


   在试试这个命令的强大功能吧:

  导出所有表和所有数据,只需执行简单的下面那条命令就OK。

  C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqldump -u root -p --default-character-set=latin1 test > d:test_file.sql


CREATE TABLE `telephone` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `tname` char(20) DEFAULT NULL,
  `handset` char(20) DEFAULT NULL,
  `housephone` char(20) DEFAULT NULL,
  `officephone` char(20) DEFAULT NULL,
  `faxes` char(20) DEFAULT NULL,
  `remark` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `handset` (`handset`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='通讯录';

****************************************************************************************

   MySQL 模糊查询全文索引,不同字段的SQL中文编码索引:

   许多朋友在使用mysql进行中文模糊查找时(如select * from telephone where tname like "%中文%"),就象我现在一样,查寻不到记录结果,显示0条记录。如何解决这个问题呢?按如下SQL语句执行试试吧:

  SELECT * FROM telephone WHERE tname REGEXP "芳";

  SELECT * FROM telephone WHERE handset REGEXP "159";

  SELECT * FROM telephone WHERE tname like binary  "%姚%";



////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

数据类型        描述

INT           整数值。MySQL允许INT是有符号的或无符号的
REAL          浮点值。这种类型提供了比INT类型更大的范围和更高的精度,但是不如INT准确
CHAR          定长字符值。CHAR字段不能保存比指定长度值更长的字符串。短于指定长度的字段用空白填充。这种类型是在任何SQL实现中最常用的类型。
VARCHAR       变长字符值
TEXT          变长字符值
DATE          标准日期值。DATE类型存储过去、现在和未来任意的日期
TIME          标准时间值。这种类型存储与日期无关的一天时间。在与日期同时使用时,可以存储指定的日期和时间。MySQL另外提供了DATETIME类型,以在一个字段中存储日期和时间。


MySQL数据库常用命


1、MySQL常用命令

create database name; 创建数据库

use database name; 选择数据库

drop database name 直接删除数据库,不提醒

show tables; 显示表

desc tablename; 表的详细描述

select 中加上distinct去除重复字段

mysqladmin drop databasename 删除数据库前,有提示。

显示当前mysql版本和当前日期

select version(),current_date;

2、修改mysql中root的密码:

如果忘记了MySQL的root密码,大家可以用以下方法重新设置:

mysql> update mysql.user set password=password("sh2009") where user='root';

mysql> flush privileges //刷新数据库

重新启动MySQL,重启后就可以使用新密码登录了。





mysql>use dbname; 打开数据库:

mysql>show databases; 显示所有数据库

mysql>show tables; 显示数据库mysql中所有的表:先use mysql;然后

mysql>describe user; 显示表mysql数据库中user表的列信息);

3、grant

创建一个可以从任何地方连接服务器的一个完全的超级用户,但是必须使用一个口令something做这个

mysql> grant all privileges on *.* to user@localhost identified by ’something’ with

增加新用户

格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码”

GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY ’something’ WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO monty@”%” IDENTIFIED BY ’something’ WITH GRANT OPTION;

删除授权:

mysql> revoke all privileges on *.* from root@”%”;

mysql> delete from user where user=”root” and host=”%”;

mysql> flush privileges;

创建一个用户custom在特定客户端it363.com登录,可访问特定数据库fangchandb

mysql >grant select, insert, update, delete, create,drop on fangchandb.* to custom@ it363.com identified by ‘ passwd’

重命名表:

mysql > alter table t1 rename t2;





恢复数据库

shell> mysqladmin -h myhost -u root -p create dbname

shell> mysqldump -h host -u root -p dbname < dbname_backup.sql





如果只想卸出建表指令,则命令如下:

shell> mysqladmin -u root -p -d databasename > a.sql

如果只想卸出插入数据的sql命令,而不需要建表命令,则命令如下:

shell> mysqladmin -u root -p -t databasename > a.sql

那么如果我只想要数据,而不想要什么sql命令时,应该如何操作呢?

   mysqldump -T./ phptest driver

其中,只有指定了-T参数才可以卸出纯文本文件,表示卸出数据的目录,./表示当前目录,即与mysqldump同一目录。如果不指定driver 表,则将卸出整个数据库的数据。每个表会生成两个文件,一个为.sql文件,包含建表执行。另一个为.txt文件,只包含数据,且没有sql指令。

5、可将查询存储在一个文件中并告诉mysql从文件中读取查询而不是等待键盘输入。可利用外壳程序键入重定向实用程序来完成这项工作。例如,如果在文件my_file.sql 中存放有查

询,可如下执行这些查询:

例如,如果您想将建表语句提前写在sql.txt中:

mysql > mysql -h myhost -u root -p database < sql.txt





自动备份MySQL数据库脚本:




@echo off
echo.
echo      MySQL数据库备份

echo *****************************
echo.
echo 今天是 %date%
echo 时间是 %time%
echo.
echo *****************************


set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"

md "D:\bat\%Ymd%"

"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqldump" --opt -Q -uroot -p2008 --default-character-set=latin1

test messagelist > "D:\bat\%Ymd%\messagelist.sql"

echo.

echo MySQL数据库备份完成,请进行检查。。。

echo.
echo.

pause
分享到:
评论

相关推荐

    mysql导入导出数据整理

    MySQL 数据导入导出数据整理 MySQL 是一个流行的关系型数据库管理系统,广泛应用于各种 web 应用程序中。作为一个数据库管理员,了解如何导入和导出数据是一项非常重要的技能。本文将详细介绍如何使用 mysqldump ...

    mysql数据库大数据量导入导出多种方法

    mysql数据库大数据量导入导出多种方法,该文档详述SELECT * INTO和mysqldump导出方法。导入方法中包括导入sql,txt文件和load data三种方法

    mysql导入导出到excel

    实现将数据库与excel之间数据的导入导出

    mysql数据导入导出

    MySQL 提供了多种方式来导出数据,其中最常用的就是 `mysqldump` 命令。通过这个命令,用户可以灵活地导出整个数据库或者指定的表。 ##### 1. 导出整个数据库 使用 `mysqldump` 命令导出整个数据库的基本语法如下...

    MySQL数据导入导出

    MySQL提供了多种方式来进行数据的导入导出操作,这里分别介绍两种常用的方法。 第一种方法是使用 SELECT INTO OUTFILE 语句进行数据导出。这是MySQL中非常直接的一个数据导出技术,它能够把SELECT查询的结果导出到...

    MySQL数据备份和恢复(导出和导入)

    其中 `table_name` 是需要导出数据的表名,`file_path` 是指定的输出文件路径。如果不指定路径,默认情况下,文件将会保存在 MySQL 的 `data` 目录下,具体位置取决于 MySQL 的安装路径。例如,如果 MySQL 安装在 `...

    MySQL导出数据并通过sqlldr导入oracle

    MySQL数据导入到Oracle的中间件,其工作原理是将MySQL数据的导出命令写入到d:/mysqltooracle/exportcmd.txt,打开该文件即可获取需要手动执行的导出MySQL数据的sql脚本...所有文件都是以导入导出的那张表的表名命名的。

    导入导出mysql数据

    与导出类似,MySQL 提供了 `mysql` 工具用于将 SQL 脚本文件导入到数据库中,从而实现数据的恢复。在 Java 程序中,同样可以通过调用系统命令的方式来执行 `mysql` 命令。 #### Java 实现 在 `DBBackupHelper` 类中...

    mysql导入导出数据中文乱码解决方法小结

    总之,解决MySQL导入导出数据时的中文乱码问题,关键在于保持字符集的一致性,从数据库设置到文件编码,再到导入导出命令的参数,都需要进行相应的调整。同时,根据实际情况选择合适的字符集,如GBK或UTF-8,以适应...

    从MySQL导入导出大量数据的程序实现方法

    当处理大量数据时,PHPmyadmin虽然提供了便捷的导入导出功能,但可能会遇到一些限制,如文件大小限制和特殊字符处理问题。针对这些挑战,我们可以采用自定义脚本来实现更灵活的数据操作。 首先,我们来看导出程序。...

    mysql数据导入导出php版 mysql数据导入导出php版

    总结,使用PHP进行MySQL数据导入导出涉及到的知识点包括:PHP执行shell命令、PDO和MySQLi扩展的使用、`mysqldump`和`mysqlimport`工具、`SELECT INTO OUTFILE`和`LOAD DATA INFILE` SQL语句、数据分批处理、事务管理...

    linux下导入导出mysql数据库及其导出数据命令大汇总

    Linux 下 MySQL 数据库导入导出命令大汇总 Linux 作为一个广泛应用于服务器操作系统的平台,MySQL 作为一个流行的关系数据库管理系统,在 Linux 下的使用非常广泛。因此,掌握 Linux 下 MySQL 数据库的导入导出命令...

    java调用mysql命令 导入导出数据库

    在这个过程中,Java通过JDBC(Java Database Connectivity)接口与MySQL进行交互,利用MySQL提供的命令行工具如`mysqldump`和`mysql`来实现数据的导入导出。 首先,我们需要了解JDBC。JDBC是Java平台上的一个标准...

    MYSQL 数据库导入导出命令

    MYSQL 数据库导入导出命令 MySQL 数据库导入导出命令是数据库管理员和开发者经常使用的命令,用于将 MySQL 数据库导出到文件中,以便备份、还原或迁移到其他服务器。下面将详细介绍 MySQL 数据库导入导出的命令和...

    Java实现mysql导入导出Excel

    在Java编程环境中,将MySQL数据库的数据导入到Excel或者将Excel数据导出到MySQL是一项常见的任务。这涉及到对Java处理文件、数据库操作以及处理Excel数据的能力。以下是对这个主题的详细阐述: 1. **Java处理Excel*...

    php excel导入导出,php导入mysql,mysql 数据导出为excel

    本项目包含一个带样式的小实例,页面可以直接导入数据,导入的数据存入mysql数据库,也可以导出excel,导出excel文件位于downloads目录下, 需要将较长的样本数据从 Excel 文件导入到 MYSQL 数据库,此项目包含一个 ...

    MySql数据导入导出

    ### MySQL 数据导入导出详解 #### 一、概述 MySQL 是一种广泛使用的开源关系型数据库管理系统,因其高效、稳定及易用性等特点被广大开发者所青睐。在日常维护与管理MySQL数据库的过程中,数据的导入导出是一项基本...

    MySQL数据导入与导出

    `mysqldump`是MySQL自带的一个强大的备份工具,不仅可以导出表结构,还能同时导出数据,非常适用于数据迁移或备份场景。其基本语法如下: ```bash mysqldump [options] database [tables] ``` 例如,若想导出名为`...

Global site tag (gtag.js) - Google Analytics