web-dev-qa-db-ja.com

警告:mysqli_connect():不明なMySQLサーバーホスト

Mysqlサーバーへの接続に問題があります。 Linuxターミナルを使用して接続できるので、ホスト、ポート、ユーザー、およびパスワードが機能することがわかります。しかし、PHPを使用して接続できません。

PHPバージョン: 5.2.17

サーバーのバージョン: 5.5.27-log MySQL Community Server(GPL)

テストコードの例を次に示します。

<?php

$link = mysqli_connect('Host.com:5306', 'user', 'pass', 'db');

/* check connection */

if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if (!mysqli_query($link, "SET a=1")) {
    printf("Errormessage: %s\n", mysqli_error($link));
}

/* close connection */
mysqli_close($link);    

?>

次の警告を出します:

Warning: mysqli_connect() [function.mysqli-connect]: (HY000/2005): Unknown MySQL server Host 'Host.com:5306' (1) in /.../test.php on line 3

Connect failed: Unknown MySQL server Host 'Host.com:5306' (1)

何をすべきかについてのアイデアはありますか?前もって感謝します!

11
DoubleTrouble

ポート番号は別の引数でなければなりません:

$link = mysqli_connect('Host', 'user', 'pass', 'db', 5306);
42
Sony

ホストはmysqlサーバーのIP、または「localhost」

1
Bouffe

何をすべきかについてのアイデアはありますか?

承知しました。 PHP関数に関するすべての問題に対する簡単な3ステップの解決策:

  1. お気に入りのブラウザを開きます
  2. タイプphp.net/アドレスバーに問題の関数名が続きます:
    php.net/mysqli_connect
  3. Enterキーを押す

これで、その説明を読み、適切なパラメータリストを確認できます。

1

Mysql関数のHostパラメータは「localhost」または「12.7.0.1」である必要があります

パラメータを "Host:port"に設定しましたが、それは間違いです。これは、完全なIPアドレスを持つサーバーまたはリモートサーバーのネットワークの完全なエイリアスである必要があります。このエラーの詳細については、こちらをご覧ください: http://compnetworking.about.com/od/workingwithipaddresses/g/127_0_0_1_def.htm

Php.netのmysqlブック: http://www.php.net/manual/en/function.mysql-connect.php

0