MySQLサーバーは、外部からの接続を受け入れるように構成する必要があり(必要に応じて正しいネットワークインターフェイスにバインドする)、そのファイアウォールは、そのポート(TCPポート3306)での着信接続を許可するように構成する必要があります。これは、MySQLをインストールしたときにまだ設定されている場合とされていない場合があります( iptables > * nixを使用している場合)。
次のように、MySQL権限でもこれを考慮する必要があります。
多くの場合、MySQL権限を設定するときに、@'localhost'に対してのみユーザーアクセス権を設定します。 から接続する適切なホスト名またはIPアドレスに対して、ユーザーアカウントとその付与された権限の両方が設定されていることを確認する必要があります。 。たとえば、次のコマンドで新しい承認済みユーザーを作成できます。
GRANT ALL PRIVILEGES ON somedatabase.* TO [email protected]'somehostname' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
次のようなものを使用して、そのサーバーにリモートで接続する前に、これらすべてを実行する必要があります(この例ではPHPを使用しています):
mysql_connect('mysqlservername', 'someuser', 'password');