質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Q&A

解決済

1回答

947閲覧

MySQL WorkbenchでエクスポートしたSQLをphpMyAdminで取り込めない

msx2

総合スコア174

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

0グッド

0クリップ

投稿2018/05/18 17:31

編集2018/05/19 00:18

タイトルそのままなのですが、WorkbenchでエクスポートしたSQLをphpMyAdminで取り込むとアップロードがいつまでも終わらずMySQLサーバーも固まってしまいます。

もちろんWorkbenchでは取り込めるのですが、同じMySQLのSQL文なのにどうしてでしょうか?

下記が実行したSQLです。
膨大な量のデータをインポートするでもないのですがアップロードで止まってしまい、その後は別タブでphpMyAdminを開こうとしてもログイン画面すら表示されなくなるのです。

仮想マシンで立てているサーバーなので再起動するまで復旧しません。

SQL

1-- MySQL dump 10.13 Distrib 5.7.17, for Win64 (x86_64) 2-- 3-- Host: localhost Database: sgq_db 4-- ------------------------------------------------------ 5-- Server version 5.7.11 6 7/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; 8/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; 9/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; 10/*!40101 SET NAMES utf8 */; 11/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; 12/*!40103 SET TIME_ZONE='+00:00' */; 13/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; 14/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; 15/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; 16/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; 17 18-- 19-- Table structure for table `mall` 20-- 21 22DROP TABLE IF EXISTS `mall`; 23/*!40101 SET @saved_cs_client = @@character_set_client */; 24/*!40101 SET character_set_client = utf8 */; 25CREATE TABLE `mall` ( 26 `id` int(11) unsigned NOT NULL AUTO_INCREMENT, 27 `mall_no` int(2) NOT NULL, 28 `mall_code` varchar(8) NOT NULL, 29 `mall_name` varchar(100) NOT NULL, 30 `order` int(2) NOT NULL, 31 `image_id` int(11) DEFAULT NULL, 32 `created_at` int(11) DEFAULT NULL, 33 `updated_at` int(11) DEFAULT NULL, 34 PRIMARY KEY (`id`), 35 UNIQUE KEY `uk_mall` (`mall_no`) 36) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; 37/*!40101 SET character_set_client = @saved_cs_client */; 38 39-- 40-- Dumping data for table `mall` 41-- 42 43LOCK TABLES `mall` WRITE; 44/*!40000 ALTER TABLE `mall` DISABLE KEYS */; 45INSERT INTO `mall` VALUES (1,1,'RAK','楽天市場',1,NULL,NULL,NULL),(2,2,'YAH','Yahoo!ショッピング',2,NULL,NULL,NULL),(3,3,'AMA','Amazon',3,NULL,NULL,NULL); 46/*!40000 ALTER TABLE `mall` ENABLE KEYS */; 47UNLOCK TABLES; 48/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; 49 50/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; 51/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; 52/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; 53/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; 54/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; 55/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; 56/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; 57 58-- Dump completed on 2018-05-17 17:41:59

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

phpMyAdminはwebアプリケーションであり、webアプリケーションではファイルアップロードサイズと処理時間に上限を定めるのが一般的です。

こんな感じでアップロードサイズの最大値を増やしたり
処理時間の上限を増やしたり

すると大きなサイズのファイルもインポート出来るようになります。(サーバスペック的に負荷が高すぎる状態になるとそれでも失敗します)

投稿2018/05/18 18:54

tanat

総合スコア18709

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

msx2

2018/05/19 00:25

ご回答ありがとうございます。 すいません質問の仕方が悪かったです。 インポートしているデータは数件でSQL自体も短いものです。 質問に実行したSQLを質問に追加しました。
tanat

2018/05/19 03:13

サイズや処理時間は関係無さそうですね。 1. Webサーバとmysqlのログに何かエラーは出ていませんか? 2. [仮想マシンで立てているサーバーなので再起動するまで復旧しません。] と言うのはapacheの再起動を指しますか?
msx2

2018/05/19 03:50

MySQLのログは特に異常なさそうです。 再起動とは仮想マシン自体をシャットダウンして再起動しています。
tanat

2018/05/19 09:41

切り分けに至るかはわかりませんが。。。 1. MySQLのみ、apahceのみを再起動した場合はそれぞれどうなりますか? 2. phpMyAdminで使っているユーザとMySQL workbenchで使っているユーザーは同じですか? 3. phpMyAdminではデータベースを選んでからのインポートと、全体からのインポートがあったと記憶していますが(最近使ってないので違うかも)具体的にどの画面からどのようにインポートしているか教えてください。 4. https://tech.basicinc.jp/articles/41 を参考にして、止まっている間のプロセスについて調べるとどうなるか追記してください
msx2

2018/05/20 01:09

ありがとうございます。 あれから色々と試してみたのですが、どうやらコメントをなくして完全にSQLの構文だけにしてしまうと動くみたいです。 コメントで無視されていると思い込んでいた /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; のような行が、調べてみるとMySQLのバージョンによって動いたり動かなかったりする命令になっているみたいです。 これらのコメント文が具体的に何をしているのかは理解できていませんが、コメントを全て消すことでインポートは無事成功しました。 どのコメントが実行を妨げているのか明らかにしていきたいと思いますが、それはもう少し自分なりに調べてみてわからなければ別の質問として投稿することにします。 この度はお付き合いいただきまして本当にありがとうございます。 一人だったら間違いなく途中で投げていたと思います。 とても勉強になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問