泥沼にハマったので備忘録としてメモ
本記事は、xserverでブログ運営している方むけの内容となります。
※最低限データベース(DB)の知識がある方しか実施しないでください。
データベース内のデータを変更する場合は気を付けてください。下手をするとサイトがこわれる可能性もあります。
実施する場合は自己責任でお願いします。
ブログの運営を楽にしたい。
じゃあどうするか?
⇒用途に応じたDBのselect文を少しずつ増やしていけば楽になるのでは…?
- MySQLのクライアントソフトを導入
- xserverでSSH接続用の設定をする
- MySQL Workbenchの接続設定を行う
- select文でキーワードを取得
-
STEP1MySQLのクライアントソフトを導入
ウィキペディア等で調べるとたくさんソフトがあってよくわからなくなりますが、
MySQLとSSH接続に対応しているクライアントソフトを導入しましょう。
ぼくは「MySQL Workbench」にしました。
\ダウンロードページへ/
オペレーティングシステムを選択後に
べージ右下のDownloadボタンからDL -
STEP2xserverでSSH接続の設定を行う
公式サイトの説明がわかりやすいので、
SSH接続の設定の手順はそちらをみてください。\公式サイトの手順ページへ/
SSH接続がひつような理由をざっくり補足
セキュリティの都合上で
①xserver 上の
②DB(データベース) に
③MySQL Workbench を直接接続することはできません。接続不可:③⇒②
そのためSSHポートフォワード(トンネリング)という機能を使用してDBに接続します。
xserverに間に入ってもらうイメージです。
接続可能:③⇔①⇔②
-
STEP3MySQL Workbenchの接続設定
「Database」メニューの
「Manage Connections」をクリック3.1 「Parameter」の設定を行う
「SSH接続」の設定値SSH Hostname : sv○○○○.xserver.jp:10022
SSH Username : xserverのユーザID
SSH key File : STEP2で作成したキーファイルを指定
sv○○○○とユーザIDが不明な場合は
xserverにログインしてインフォパネルから確認してください「MySQL接続」の設定値SSH Hostname : mysql△△△△.xserver.jp
Username : MySQLのユーザ名
Password : MySQLのパスワード
mysql△△△△とユーザ名が不明な場合は
xserverにログインしてサーバパネルからMySQL設定を確認してください3.2 「Remote Management」の設定を行う
3.1で指定したSSH接続の設定とほぼ同じです。
Port番号の入力欄が分かれているのでそれだけ注意
3.3 「System Profile」の設定を行う
以下を選択
System Type : Linux
Installation Type : CentOS 7(MySQL Package)
「TestConnection」を押してみましょう。
私の環境だと、
設定がうまくできていても、できていなくても
5~10秒くらいはフリーズ(応答なし)になります。正しく設定できている場合は、フリーズから復帰して何も起こりません。
設定ミスの場合は、MySQL Workbenchがそのまま落ちます。
何も起こらない場合はそのまま本接続してみましょう。
-
STEP4select文でキーワードを取得
以下はブログテーマのJINを使っている人向けの内容です。
実際に検索(SELECT)してみましょう。
以下の4項目を取得したくてSQLを作成しました。
※取得したいだけなので性能とかは度外視となっています。・投稿日時
・タイトル
・パーマリンク
・キーワード以下のSQLを貼り付けて実行してみてください。
SELECT post_id, meta_key, post_date, post_title, post_name, meta_value FROM wp_postmeta m INNER JOIN wp_posts p ON m.meta_key = 'jin_keyword' AND m.post_id = p.ID ORDER BY post_date;
実行結果
Exportからcsvへの出力が可能なので
Excelなどで整形して活用してみてください。