如何快速将sql文件导入mysql数据库中

如何快速将sql文件导入mysql数据库中,第1张

今天见一位php同行在将从服务器mysql数据库导出的sql文件导入到本地
mysql数据库
,见他所用的方法很惊讶,他是用editplus打开下载下来的sql文件,复制所有内容,然后再粘贴到本地的phpmyadmin中。phpmyadmin复制了半天没有响应,最后还是没有将数据库导入到本地。
其实,跟我这位同行一样,很多php新手也是用的这种方法将sql文件导入到本地mysql数据库的。sql文件的数据小还好说,如果这个sql文件很大,上百兆的话,那么你可能都无法成功的导入到mysql数据库中去。这里我分享下我所使用的方法。
点击"开始"-"运行",输入cmd,然后回车进入到dos界面。先进入你的mysql安装目录。这里比方说你的mysql安装在d盘,你的sql文件也在d盘,加入命名为demosql, *** 作的方法是:输入"d:",回车即进入到d盘了,然后输入"cd
mysql/bin"并回车,然后输入"mysql
-u
root
-p
database
d:/demosql",回车显示要输入密码,如果你的mysql数据库的密码为空则不输入任何东西回车,没有出现错误说明导入成功。
说明:上面的database是你要导入的数据库名。

一、首先在windows平台下mysql用作导出数据库源。查看字符编码的系统变量:
复制代码代码如下:
mysql> show variables like ‘%char%';
+————————–+—————————-+
| Variable_name | Value |
+————————–+—————————-+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | gbk |
| character_set_system | utf8 |
| character_sets_dir | D:mysqlsharecharsets |
+————————–+—————————-+
查看character_set_database,这里是latin1,latin1是装不了多字节字符集的
二、在windows下设置系统变量为utf8
复制代码代码如下:
mysql>set character_set_database=utf8; ##设置默认的字符集为utf8
三、导出数据
复制代码代码如下:
mysql> select from table into outfile ‘c:tabletxt' where +条件
这时导出了我想要的部分数据,并以txt文件存在 tabletxt中。


导出
mysql> select id, ke, val
    -> INTO OUTFILE 'f:/testtxt'
    -> FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY ''''
    -> LINES TERMINATED BY '\n'
    -> FROM test_rownum;
Query OK, 9 rows affected (001 sec)
注:
FIELDS TERMINATED BY ',' 数据字段间用逗号隔开
OPTIONALLY ENCLOSED BY '''' 每个字段的数据用单引号括住(注意单引号的表达方法)
LINES TERMINATED BY '\n' 每条数据结束用'\n'作为换行符。
导入
mysql> TRUNCATE TABLE test_rownum;
Query OK, 0 rows affected (001 sec)
mysql>
mysql> LOAD DATA INFILE 'f:/testtxt'
    -> INTO TABLE test_rownum
    -> FIELDS TERMINATED BY ','
    -> OPTIONALLY ENCLOSED BY ''''
    -> (id, ke, val);
Query OK, 9 rows affected (000 sec)
Records: 9  Deleted: 0  Skipped: 0  Warnings: 0
mysql> select  from test_rownum;
+------+------+------+
| ID   | Ke   | val  |
+------+------+------+
|    1 | A    |    1 |
|    2 | A    |    2 |
|    3 | A    |    3 |
|    4 | B    |    1 |
|    5 | B    |    2 |
|    6 | B    |    1 |
|    7 | C    |    3 |
|    8 | C    |    2 |
|    9 | C    |    2 |
+------+------+------+
9 rows in set (000 sec)

我在 Windows 下面的 Mysql   是成功 导入导出了啊

我的 Mysql 是安装在本机的。

如果你的 Mysql 服务器是安装在另外一台服务器上面, 那么可能会出现你说的这个问题。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13495447.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-18
下一篇 2023-08-18

发表评论

登录后才能评论

评论列表(0条)

保存