サイト構築 スクリプトのお勉強

MySQL for windowsでwordpress DBを再現する

投稿日:

はじめに

本当は、今はやりの生成AIとして、LLM(ローカルAPI)とMySQLのMCP Serverを使用してチャットシステムを作ろうと思ってました。

でも、その前に、そもそもLLMの対象となるMySQL DBさえなかったので、まずは、MCP Server の対象となるDBを設定します。

Linux上に設定してもいいですが、ここはあえてWindows上に設定します。

環境

MySQLを設定した環境は以下です。

  • Windows 11 Home 24H2
  • MySQL 8.4.5 LTS ( from https://dev.mysql.com/downloads/installer/ )
  • MySQL Workbench 8.0.42 ( from https://dev.mysql.com/downloads/workbench/ )

データ

このWordpressのバックアップデータ(dump.sql)を使用します。

前提

以下をインストールしていることを前提とします。インストール手順は割愛します。

  • MySQL for Windows
    • port 13316
    • ユーザ: root
    • パスワード: [設定時に入力したパスワード]
  • MySQL Workbench
    • 上記設定で接続

手順

手順は以下のように行いました。

MySQL Workbench を起動し、MySQL サーバーに接続

  • MySQL Workbench を起動します。
  • 登録済みの接続をダブルクリックするか、「+」ボタンをクリックして新しい接続を作成し、MySQL サーバーに接続します。

リストア先のデータベース作成

  • 左側の「Navigator」パネルにある「Administration」の下の「Schemas」をクリックします。
  • 右上のアイコン(新しいスキーマを作成)をクリックし、wordpress(データベース名)を入力して「Apply」をクリックし、データベースを作成します。作成したデータベースを右クリックします。

Data Import/Restoreを選択

  • AdministrationタブのMANAGEMENT->Data Import/Restoreを選択します

その際の図は以下です。

Import from Discタブからインポート

  • 「Import from Self-Contained File」ラジオボタンを選択します。
  • インポートする dump.sql ファイルを選択します。
  • 「…」ボタンをクリックし、リストアしたい dump.sql ファイルを選択して「Open」をクリックします。
  • 「Default Target Schema」のドロップダウンリストから、リストア先のデータベース名を選択します。

右下の「Start Import」ボタン押下でインポート開始

  • インポートが正常に完了すると、「Import of … has finished」のようなメッセージが表示されます。
  • 左側の「Navigator」パネルの「Schemas」の下にあるリストア先のデータベースを展開し、テーブルやデータが正しくインポートされているか確認します。

修正点: バックアップ(mysqldump)のコマンドオプション修正

ただし、上記だけではできませんでした。

そもそものバックアップするためのmysqldumpを以下のように起動する必要がありました。でないと色々エラーが出ます。”admin”は管理者である必要があります。そうでないと権限のないtableをdump出来ないようです。

$ /bin/mysqldump wordpress -u admim -p'BBBBB' --single-transaction --hex-blob --default-character-set=utf8mb4

終わりに

  • MySQL DBを設定することができました。
    • 実際の運用ではセキュリティ設定やバックアップを考える必要があると思います。
    • ここでは割愛しています。
  • 次はこのDBを使って何かしたいと思います。

-サイト構築, スクリプトのお勉強
-

執筆者:

関連記事

CentOS7 + Django2.2 + uwsgi + nginx 連携方法

Djangoとnginx連携方法 以前はApache経由で連携しましたが、今回はnginxと連携する方法を記述します。 環境 設定した環境は以下です。 OS: CentOS7Python3.6.8 ( …

no image

GLP-1 メディカルダイエット 58日目

メディカルダイエットして58日目の記録をしておこうと思います。 9回目。 今回は左腹(中部)に打ちました。痛いのはいまだに慣れない。。 土曜にゲットしてした 渋谷に行ってきたが、そこの医院には相変わら …

CentOS7をRocky Linux 9に移行する

このVMのOSをCentOS7にした関係上、そろそろupdateする必要があります。そもそもCentOS7を選択した理由は、仕事で使用するからでした。 で、仕事ではRocky Linux 9なので、こ …

Djangoアプリサンプル – 画像ファイルアップロード + 顔モザイク(統合編)

顔モザイク Djangoアプリ 前々回 前回 を統合して、Djangoアプリを作成してみようと思います。 前提インストール 前回、ubuntu 18を前提に記述しましたが、CentOS7(CentOS …

言語別ログイン機能パスワード保存処理方針

ちょっと前に、ログイン機能を作成した際、パスワードを暗号化するか、という議論を目にしたことがありました。 昔だと、「パスワードを暗号化しない」方で実装していましたが、最近はセキュリティが当たり前になっ …

    google オプトアウト Click here to opt-out.