一、备份数据库:(命令在DOS的mysqlin目录下执行)
代码如下 | 复制代码 |
mysqldump --opt school>school.bbb |
注释:将数据库school备份到school.bbb文件,school.bbb是一个文本文件,文件名任取,打开看看你会有新发现。
1.导出整个数据库
代码如下 | 复制代码 |
mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u root -p aikersql> aiker.sql |
2.导出一个表
代码如下 | 复制代码 |
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名 mysqldump -u aiker -p aikersql users> aiker_users.sql |
3.导出一个数据库结构
代码如下 | 复制代码 |
mysqldump -u root -p -d --add-drop-table aikersql>d:aiker_db.sql |
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
二.导入数据库
常用source 命令
进入mysql数据库控制台,如mysql -u root -p
代码如下 | 复制代码 |
mysql>use 数据库 |
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:aiker_db.sql
也可以用
代码如下 | 复制代码 |
mysql -uroot -Ddb1 <d:aiker_db.sql |
三、将文本数据转到数据库中
1、文本数据应符合的格式:字段数据之间用tab键隔开,null值用n来代替.
例:
3 rose 深圳二中 1976-10-10
4 mike 深圳一中 1975-12-23
2、数据传入命令 load data local infile "文件名" into table 表名;
注意:你最好将文件复制到mysqlbin目录下,并且要先用use命令打表所在的库。
数据导出
数据导出主要有以下几种方法:
使用select into outfile "filename"语句
使用mysqldump实用程序
使用phpmyadmin导入
例如:mysql> select * from driver into outfile "a.txt";
导入
同导出相类似,导入也有两种方法:
使用LOAD DATA INFILE "filename"命令
使用mysqlimport实用程序
使用phpmyadmin导入
使用sql文件
下面谈一下关于导入文件大小限制问题的解决:
默认情况下:mysql 对导入文件大小有限制的,最大为2M,所以当文件很大时候,直接无法导入,下面就这个问题的解决列举如下:
1.在php.ini中修改相关参数:
影响mysql导入文件大小的参数有三个:
memory_limit=128M,upload_max_filesize=2M,post_max_size=8M
修改upload_max_filesize=200 M 这里修改满足你需要的大小,
可以同时修改其他两项memory_limit=250M post_max_size=200M
这样就可以导入200M以下的.sql文件了。
上文中是把mysql放置在系统路径中,其实不妨也行。例如我的Mysql安装目录为D:MySQL Server 5.0;
则首先用cmd打开dos窗口,然后输入D:(没有'')回车
此时应该会出现D:>这样的标记,然后在其后面输入D:MySQL Server 5.0bin回车(顺序颠倒也行的)
出现D:MySQL Server 5.0bin> 接着输入mysqldump -u用户名 -p 数据库名 > 数据库名.sql(也可以输入路径);具体用法参照上文。
导入文件同样,只是改了‘>’为‘<’就行了。或者直接用source 也行