• 締切済み

MYSQLデータベースの移行

現在WordPressで運用しているサイトをサーバーにあげているのですが、ローカルでCSS等の微調整をしたいのでローカルのXAMPP環境に移行させたいと思っています。 サーバーのMYSQLからエクスポートした後ローカルでインポートしようと試みたのですがwp_commentmeta以外のテーブルができません。エラーメッセージは下記のものです。 ALTER TABLE `wp_commentmeta` ADD PRIMARY KEY (`meta_id`), ADD KEY `comment_id` (`comment_id`), ADD KEY `meta_key` (`meta_key`(191)) 単純なことなのかもしれませんがどこをどうすればいいのか分かりません。ご教授いただければ幸いです。

  • MySQL
  • 回答数1
  • ありがとう数0

みんなの回答

回答No.1

> エラーメッセージは下記のものです。 > > ALTER TABLE `wp_commentmeta` > ADD PRIMARY KEY (`meta_id`), > ADD KEY `comment_id` (`comment_id`), > ADD KEY `meta_key` (`meta_key`(191)) これは、エラーメッセージではなくて、SQL文ですね。

関連するQ&A

  • 主キーを追加しようとするとエラー

    MYSQL4.0を使っていますが、 テーブル作成後、主キーを追加しようと ALTER TABLE MYTABLE ADD PRIMARY KEY ID; などと書くと、syntaxエラーになってしまいます。 どこが悪いのでしょうか、 分かる人がいましたら教えてください。

    • ベストアンサー
    • MySQL
  • mysqlでSELECTの速度を上げる方法

    以下のようなSQLを発行すると、mysqlの処理時間が非常に多くかかるため、なんとか最適化を行いたいと考えています。 どのような方法があるのか教えていただけませんしょうか。 SELECT user_id,comment,comment_id,date,study_time,study,source FROM data_temp t1 WHERE NOT EXISTS (select comment_id from data t2 where t1.comment_id = t2.comment_id) ■補足 ・dataとdata_tempのテーブル構造は全く同じです。 ・SQLで実現したいことは、両テーブルのcomment_idをキーとして、dataに含まれないdata_tempの差分データを表示させたい。 なお、以下のインデックス作成は行いましたが、結果変わらずでした。 alter table data t1 ADD INDEX_t1 (user_id,comment,comment_id,date,study_time,study,source); alter table data_temp t1 ADD INDEX_t1 (user_id,comment,comment_id,date,study_time,study,source); よろしくお願いします。

    • ベストアンサー
    • MySQL
  • MySQL データベースを選択したい

    こんにちは。 SQLの初歩的な操作で躓いています。 MySQL 3.23.51-nt (WondowsXP) を使用しています。 PHPベースの掲示板を作成していまして、次の一連の作業をしたいのですが、 ALTER TABLE phpbb_categories ADD cat_main_type CHAR(1); ALTER TABLE phpbb_categories ADD cat_main MEDIUMINT(8) UNSIGNED DEFAULT '0' NOT NULL; ALTER TABLE phpbb_categories ADD cat_desc TEXT NOT NULL; ALTER TABLE phpbb_forums ADD forum_link VARCHAR(255); ALTER TABLE phpbb_forums ADD forum_link_internal TINYINT(1) NOT NULL; ALTER TABLE phpbb_forums ADD forum_link_hit_count TINYINT(1) NOT NULL; ALTER TABLE phpbb_forums ADD forum_link_hit BIGINT(20) UNSIGNED NOT NULL; ALTER TABLE phpbb_users ADD user_sub_forum TINYINT(1) DEFAULT '1' NOT NULL; ALTER TABLE phpbb_users ADD user_split_cat TINYINT(1) DEFAULT '1' NOT NULL; ALTER TABLE phpbb_users ADD user_last_topic_title TINYINT(1) DEFAULT '1' NOT NULL; ALTER TABLE phpbb_users ADD user_sub_level_links TINYINT(1) DEFAULT '2' NOT NULL; ALTER TABLE phpbb_users ADD user_display_viewonline TINYINT(1) DEFAULT '2' NOT NULL; 上記をを打ち込んでもError 1046: No Database Selected と言われます。 そこでどのようにしてデータベースを選択する事が出来るのでしょうか? よろしくお願いいたします。

  • MYSQLのレコードを上書きしたいのですが…

    phpからMYSQL5に接続して以下のようなデータベースを作りました。 no name comment ←カラム名 1  山田 起きる 2  山田 叫ぶ 3  山田 寝る これを上書きして、 no name comment 1  山田 食べる 2  山田 遊ぶ 3  山田 寝る というようにレコードを更新したいのです。 しかし、どうやっても1、2、3の後に4、5、6と続いてしまいます。 「no」カラムにはauto_increment+primary keyを設定しています。 phpで構文を送る前に mysql_query("alter table db1 auto_increment=0"); を設定してみたり、 mysql_query("insert into db1 (name,comment) value ('山田','$comment')"); や mysql_query("replace into db1 (name,comment) value ('山田','$comment')"); を試してみましたが、上手く行きませんでした。 現在は、 mysql_query("delete from db1"); mysql_query("alter table db1 auto_increment=0"); ---php処理--- mysql_query("insert into db1 (name,comment) value ('山田','$comment')"); というように、二度目の書き込みを行う前に一旦テーブル内のレコードを すべて削除して書きなおすという方法を取っています。 しかし、数が多くなると一旦削除する作業を行うと処理が遅くなってしまうと思いますので、上書きしてデータベースを更新したいと思っているのですが、どのようにすればよいでしょうか?

    • ベストアンサー
    • MySQL
  • 重複を許すキーの構文がわかりません。

    データベース自体はPostgreSQLを使っています。そして、アクセス2003を使って、テーブルリンクで閲覧しています。 あるフィールドに検索が早くなるようにキーを設けたいのですが、 重複を許すキーの構文がわかりません。 PRIMARY KEY, UNIQUEの設定はわかるのですが、 どのように記述すればよいのでしょうか? 以下、アクセスのプロパティです。 インデックス ●いいえ デフォルト、無指定 ●はい(重複あり)[***** ここの部分のSQLが知りたい *****] ALTER TABLE テーブル名 ADD ???????? (フィールド); ●はい(重複なし)UNIQUE もしくは値要求混みのPRIMARY KEY ALTER TABLE テーブル名 ADD UNIQUE (フィールド); ALTER TABLE テーブル名 ADD PRIMARY KEY (フィールド);

  • PostgreSQLからMySQLへ変換

    現在ECサイトに追加カスタマイズ機能を導入したいと考えているのですが、 その際の使用コードが以下のようにPostgreSQLの記載となっており、 使用しているphpMyAdminにてSQLコードを入力するとエラーとなってしまいます。 ↓PostgreSQLコード CREATE TABLE dtb_bookmark ( bookmark_id serial NOT NULL, customer_id integer NOT NULL, product_id integer NOT NULL, memo text, create_date timestamp without time zone NOT NULL, update_date timestamp without time zone NOT NULL, del_flg integer ); ALTER TABLE ONLY dtb_bookmark ADD CONSTRAINT dtb_bookmark_pkey PRIMARY KEY (bookmark_id); COMMENT ON TABLE dtb_bookmark IS 'お気に入り情報'; エラーはtimestamp型とALTER以降の文で発生致します。 mysql文にて解釈させるにはどのように変更したらよろしいのでしょうか? 使用mysqlバージョンはMySQL 4.1.21です。 アドバイスなど頂けましたら幸いです。 よろしくお願い致します。

    • ベストアンサー
    • MySQL
  • Mysqlに項目を追加するとき順番をかえるには

    こんにちは、 今mysqlを使用しています。 例えば、tbl_EXというテーブルがあり、 そこにはid,name,flgが入っているとしたときに addという項目を追加したい場合は ALTER TABLE tbl_EX ADD add int NULL DEFAULT 0 などとすれば追加できると思うのですが、 その追加を id, name, (add), flg というように 真ん中に入れたい場合は、どうすればいいのでしょうか? 一度テーブルをdropして作り替える以外に方法がある場合、 教えてください。

    • ベストアンサー
    • MySQL
  • MySQLに参照整合性制約を実装したテーブルを作成したい

    MySQL4.1.17に、 外部キーで関連付けたテーブルを作成したいのですが、 生成時にエラーが発生してしまいます。 <Error Message> 37000:[MySQL][ODBC 3.51 Driver][mysqld-4.0.17-nt]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 流しているDDLは以下のとおりです。 テーブル型は両方ともINNODBに設定しています。 どなたか原因がわかる方がいたら、ご教授いただけます でしょうか? よろしくお願いいたします。 CREATE TABLE Entity1( att1 CHAR(10) NOT NULL, PRIMARY KEY (att1) )TYPE=INNODB ; CREATE TABLE Entity2( att1 CHAR(10) NOT NULL, PRIMARY KEY (att1) )TYPE=INNODB ; CREATE INDEX FKEnt2 ON Entity2(att1) ; ALTER TABLE Entity2 ADD FOREIGN KEY (att1) REFERENCES Entity1(att1) ;

    • ベストアンサー
    • MySQL
  • MySQLで、テーブル内のフィールドの名前を変えたいのですが・・・

    MySQL4.0.20 Linuxを使っています。 テーブル内のフィールドの名前を変えたいのですが、alter table の modifyはカラムの属性を変えるもので、名前を変えるのは運用途中でできるのかなと、ふと疑問に思いました。 alter tableなどでできるのでしょうか? 結局サーバーを止めて、バックアップし、テーブル定義を書き直して、リストアするしか無いのでしょうか?

    • ベストアンサー
    • MySQL
  • 複数のindexについて

    CREATE TABLE `test` ( `id` INT(8) , `num` INT(8) , 他多数 (省略) ) このようなテーブルがある場合、以下の2種類のインデックスのつけ方にどのような違いがあるのでしょうか? phpmyadminで確認すると、(1)はインデックスが合体しており、(2)はインデックスが個別に分かれています。 (1) ALTER TABLE `test` ADD INDEX ( `id` , `num` ) (2) ALTER TABLE `test` ADD INDEX ( `id` )   ALTER TABLE `test` ADD INDEX ( `num` ) ちなみに、以下のようなSELECT文を用いる場合には、どちらのインデックスが適していますか? SELECT * FROM test WHERE id='●' and num > '△' ( mysql5,MyISAM )

    • ベストアンサー
    • MySQL