データベースへのアクセス

データベースへの直接アクセスに加えて、phpMyAdmin、HeidiSQL、Sequel Pro、MySQL Workbenchなどのツールを使用してデータベースを管理することも可能です。データベースへの直接アクセスを設定するには、KinstaサイトへのSSHトンネルを設定します。こちらのページでは、データベースへのさまざまな接続方法をご紹介します。

外部データベース接続を許可するためにリモートIPアドレスを設定しなければならないホスティングサービスもありますが、弊社では不要です。SSHトンネルを使用してデータベースにアクセスする場合(こちらのページでご紹介する方法)、接続はSSHの認証プロセスによって保護されます。

MyKinstaにサイトを追加すると、データベース名、ユーザー名、SSH/SFTPのユーザー名がサイト名を元に生成されます。サイト名に日本語のカナ、中国語、アラビア語、タイ語などの非ラテン文字が使用されている場合は、弊社システムの関係上、ラテン文字に変換されます。

phpMyAdminにアクセスする

弊社では、すべてのお客様にphpMyAdminへの簡単アクセスを提供しています。phpMyAdminは、MySQLデータベースの管理に人気のある無料アプリケーションです。

phpMyAdminにアクセスしてWordPressデータベースを管理するには、MyKinstaにログイン後、「WordPressサイト」>(サイト名)>「情報」に移動します。

データベースへのアクセス」セクションに、phpMyAdminへのログインに必要なデータベースのユーザー名およびパスワードが表示されます。

ログインページにアクセスするには、「phpMyAdminを開く」をクリックします。

MyKinstaからphpMyAdminを開く
MyKinstaからphpMyAdminを開く

phpMyAdminのログインページで、データベースのユーザー名とパスワードを入力します。

phpMyAdminのログインページ
phpMyAdminのログインページ

phpMyAdminにログインすると、データベーステーブルの表示、クエリの実行、テーブルの削除、データのインポートWordPressデータベースのエクスポートなどの操作が行えます。

Viewing your database in phpMyAdmin.
phpMyAdmin でデータベースを表示する。

phpMyAdminの詳しい使用方法については、phpMyAdminの公式ドキュメントをご覧ください。

SSHとデータベース情報

以下にご紹介する方法では、MyKinstaでサイトのSSHおよびデータベース情報を取得する必要があります。「WordPressサイト」>(サイト名)>「情報」画面で、以下の情報を確認することができます。

  • SFTP/SSH ホスト
  • SFTP/SSH ユーザー名
  • SFTP/SSH パスワード
  • SFTP/SSH ポート
  • データベース名
  • データベースユーザー名
  • データベースパスワード
SSHトンネルを設定するための認証情報
SSHトンネルを設定するための認証情報

データベースのパスワードを変更す⁨⁩る

データベースのパスワードを変更するには、パスワードにカーソルを合わせ、横に出現する「新しいデータベースパスワードを生成」(丸い矢印のアイコン)をクリックします。

WordPressサイトの新しいデータベースパスワードを生成
WordPressサイトの新しいデータベースパスワードを生成

SFTP/SSHのパスワードを変更する

選択している環境のSFTP/SSHパスワードを変更するには、パスワードにカーソルを合わせ、横に出現する「新しいSFTPパスワードを生成」(丸い矢印のアイコン)をクリックします。

WordPressサイトの新しいSFTP/SSHパスワードを生成
WordPressサイトの新しいSFTP/SSHパスワードを生成

表示されるウィンドウで「新しいパスワードを生成する」をクリックして確定します。

「新しいパスワードを生成する」をクリックして確定
「新しいパスワードを生成する」をクリックして確定

IP許可リスト

データベースへのアクセスを許可するIPアドレスのリストを指定するには、「IP許可リスト」の下にある編集アイコンをクリックします。

IP許可リストを編集
IP許可リストを編集

データベースへのへのアクセスを許可するIPアドレスを入力し、「追加」をクリックします。「1.1.1.1, 2.2.2.2」のように、 カンマ(,)で区切って複数のアドレスを指定することができます。また「1.1.1.1/32」のように、スラッシュ(/)を使用してIPアドレスの範囲を指定することも可能です。

SFTP/SSH経由でのアクセスを許可するIPアドレスを指定
SFTP/SSH経由でのアクセスを許可するIPアドレスを指定

必要なIPアドレスをすべて指定したら、「IP許可リストを更新」をクリックします。

データベースのIP許可リストを更新
データベースのIP許可リストを更新

コマンドラインでデータベースに接続する

コマンドラインだけで操作を行う場合、SSHトンネル経由でデータベースに直接接続することができます。これにより、MySQL Shellのようなローカルデータベース接続クライアントを使用し、安全にMySQLデータベースに変更を加えることができます。

SSHトンネル経由でデータベースに接続するには、MyKinstaのサイトの「情報」画面にある以下の情報が必要になります。

  • SSH ユーザー名
  • SSH パスワード
  • SSH ホスト
  • SSH ポート
  • データベースのユーザー名
  • データベースのパスワード

macOS

macOSでは、ターミナルを起動して、以下のコマンドを実行します。「ssh_username」「ssh_host」「ssh_port」はそれぞれサイトの設定に置き換えてください。ローカルのポート3307を、データベースを含むリモートサーバーのポート3306に割り当て、必要なポート転送を実行するコマンドです。

ssh -fN ssh_username@ssh_host -p ssh_port -L 3307:127.0.0.1:3306

上のスクリーンショットのサイト例(kinstalifeサイト)では、以下のコマンドでSSH接続を確立することができます。

ssh -fN [email protected] -p 47780 -L 3307:127.0.0.1:3306

プロンプトが表示されたら、SFTP/SSHのパスワードを入力し、Enterキーを押します。パスワードが正しくない旨のメッセージが表示されなければ、問題ありません。

macOSのSSHトンネル
macOSのSSHトンネル

この時点で、Macが127.0.0.1:3307経由でリモートデータベースに接続するように設定されます。まだインストールしていない場合は、ローカルにMySQL Shellをインストールしてください。

以下MySQL Shellのコマンドを使用してデータベースに接続します。

mysqlsh --host=127.0.0.1 --port=3307 -u database_username -p --sql

kinstalifeサイトの場合は、以下のコマンドを使用します。

mysqlsh --host=127.0.0.1 --port=3307 -u kinstalife -p --sql

データベースのパスワードの入力を求められるため、先ほどの「情報」画面を開いておくと便利です。接続に成功すると、以下のSQLインターフェースが表示され、リモートデータベースに直接問い合わせることができます。

macOSのMySQL Shell
macOSのMySQL Shell

HeidiSQLでデータベースに接続する(Windowsのみ)

  1. HeidiSQLをダウンロードしてインストールします。初めて起動する際には、以下の情報でセッションファイルを新規作成する必要があります。
    • ネットワーク種別:MySQL(SSHトンネル)
    • ホスト名/IPlocalhost(または 127.0.0.1)
    • ユーザー:MyKinstaの「データベースのユーザー名」
    • パスワード:MyKinstaの「データベースのパスワード」
    • ポート:3306
    • データベース:MyKinstaの「データベース名」
    HeidiSQLのセッションファイル
    HeidiSQLのセッションファイル
  2. コマンドライン接続ツールのPlink.exe(PuTTY Link)をダウンロードし、HeidiSQLの「高度な設定」タブで場所を指定します。その後、「SSHトンネル」タブに以下の情報を貼り付けます。
    • SSHホスト:MyKinstaの「SFTP/SSH ホスト」
    • ポート: MyKinstaの「SFTP/SSH ポート」
    • ユーザー名:MyKinstaの「SFTP/SSH ユーザー名」
    • パスワード: MyKinstaの「SFTP/SSH パスワード」
    • ローカルポート:3306
    HeidiSQLのSSHトンネル設定
    HeidiSQLのSSHトンネル設定
  3. 開く」をクリックすると、ホストを信頼し、レジストリにキーを追加するプロンプトが表示されます。

Sequel Proでデータベースに接続する

  1. Sequel Proをダウンロードし、インストールします。
  2. 接続を作成するには「SSH」タブをクリックし、以下の情報パラメータを設定します。
    • MySQL Host:127.0.0.1
    • Username:MyKinstaの「データベースのユーザー名」
    • Password:MyKinstaの「データベースのパスワード」
    • Database:MyKinstaの「データベース名」
    • Port:3306
    • SSH Host:MyKinstaの「SFTP/SSH ホスト」
    • SSH User:MyKinstaの「SFTP/SSH ユーザー名」
    • SSH Password:MyKinstaの「SFTP/SSH パスワード」
    • SSH Port:MyKinstaの「SFTP/SSH ポート」
    Sequel Pro
    Sequel Pro
  3. Connect」をクリックします。

MySQL Workbench でデータベースに接続する

    1. MySQL Workbenchをダウンロードし、インストールします。初めて起動する際は、以下の情報を使用してセッションファイルを作成する必要があります。
    2. Workbenchを開き、接続を作成します。「Database」メニューで「Manage Connections」を選択し、「New」をクリックして、接続名を入力します。「Connection Method」のドロップダウンメニューから、「Standard TCP/IP over SSH」を選択します。
      MySQL Workbenchの接続
      MySQL Workbenchの接続
    3. 以下の接続パラメータを設定します。
      • SSHホスト名:MyKinsta「SFTP/SSHホスト」のIPアドレスの後にコロン(:)と「ポート」(例:123.123.12.123:53229)を入力
      • SSHユーザー名:MyKinstaの「SFTP/SSHユーザー名」
      • SSHパスワード:MyKinstaの「SFTP/SSHパスワード」
      • MySQLホスト名:localhost
      • MySQLサーバーポート:3306
      • ユーザー名:MyKinstaの「データベースのユーザー名」
      • パスワード:MyKinstaの「データベースのパスワード」
    4. Close」をクリックします。
    5. Windowsのみ)Windowsの場合は、「System Profile」タブを更新する必要があります。デフォルトではこの設定はグレー表示されているため、「Remote Management」タブで「Native Windows Remote Management」を一時的に有効にしてください。その後、「System Profile」で以下を更新します。
      • System Type:Linux
      • Installation Type:Ubuntu Linux(MySQL Package)

      更新後、「Remote Management」タブで設定を「Do not use remote management」(リモート管理を使用しない)に戻します。

    6. 一覧から接続を開くと、「Could not connect the SSH tunnel」と「Connection Warning」の2つのポップアップウィンドウが表示されます。どちらとも「Continue」をクリックしてください。
      Could not connect the SSH tunnel
      Could not connect the SSH tunnel
      Connection Warning
      Connection Warning

      これでデータベースにアクセスし、操作を行えるようになります。

「Incompatible SSH peer (no acceptable kex algorithm)」というエラーメッセージが表示される場合は、Workbenchのソフトウェアが古いことを意味します。なお、「check for updates」オプションが、実際には最新版ではないにもかかわらず、すでに最新版を実行していることを報告するバグが発生する事例も出ています。これを解決するには、公式ダウンロードページから最新版を入手してください。

この記事は役に立ちましたか?