ホームページ > データベース > mysql チュートリアル > mysql source导入多个sql文件和较大文件及在线互转

mysql source导入多个sql文件和较大文件及在线互转

WBOY
リリース: 2016-06-07 14:50:18
オリジナル
1204 人が閲覧しました

mysqluse dbtest; mysqlset names utf8; mysqlsource D:/mysql/all.sql; 通过source命令导入多个文件,可以新建一个all.sql文件,里面存放下面的命令 例如: source d:/a1.sql; source d:/a2.sql; 当你运行 mysqlsource D:/mysql/all.sql; 这样就可以在一个s

mysql>use dbtest;
mysql>set names utf8;

mysql>source D:/mysql/all.sql;

通过source命令导入多个文件,可以新建一个all.sql文件,里面存放下面的命令
例如:
source d:/a1.sql;
source d:/a2.sql;
当你运行
mysql>source D:/mysql/all.sql;
这样就可以在一个source命令里面导入多个sql文件了。

我看到还有人尝试用 source *.sql 来执行,这样是不行的(哥也尝试了一下)。
值得注意一点的是,all.sql加载进来的sql文件最好写绝对路径,否则会找不到文件,除非你是在.sql的同级目录底下启用的mysql


这样就可以在一个source命令里面导入多个sql文件了。

但这样会有一个问题,如果有一100个这样的文件我们一个个去写命令肯定很麻烦,下面我百度搜索到一个解决办法

<pre name="code" class="python">
ログイン後にコピー
<span style="font-size:18px;">新建一个all.sql
vim all.sql
在里面写入:
source 1.sql
source 2.sql
......
source 53.sql
source 54.sql
然后只要
mysql> source all.sql</span>
ログイン後にコピー


ログイン後にコピー
ログイン後にコピー

另一种大文件导入解决办法,这个是用服务器管理权限的用户了

在mysql的安装目录下 找到 my.ini文件 加入以下代码:

interactive_timeout = 120
wait_timeout = 120
max_allowed_packet = 32M
ログイン後にコピー
导入sql的命令行如下:

source "路径名"+/mytest_emp_dept.sql
ログイン後にコピー

如果两个在线的网站互转数据,解决就更简单了:
mysqldump -uuser -ppwd database | mysql -hip -ppwd database
*user为数据库用户名;pwd为数据库密码;ip为数据库ip;database为数据库名字;另外后面为目标库*



ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート