0

次のような MySQL 接続の詳細を使用して、サーバーに Silverstripe をインストールしようとしています。

ホスト名 localhost:/tmp/mysql5.sock

ソケット/tmp/mysql5.sock

これらのアドレスのいずれかをデータベース サーバーのインストール フォームに入力すると、localhost:/tmp/mysql5.sock の送信時に次のエラーが表示されます。

I couldn't find a database server on 'localhost:/tmp/mysql5.sock': Connection refused"

または /tmp/mysql5.sock の場合

I couldn't find a database server on '/tmp/mysql5.sock': php_network_getaddresses: getaddrinfo failed: Name or service not known

localhost だけでこのエラーが表示されます。

I couldn't find a database server on 'localhost': Connecting to 3.22, 3.23 & 4.0 servers is not supported

ありがとう、フロリアン

4

3 に答える 3

1

基本的に、サーバーの設定に問題がありました。

これは私が追加したものです_config.php

ini_set('mysqli.default_socket', '/tmp/mysql5.sock');

次に、db 接続は次のようになります。

$databaseConfig = array(
    "type" => 'MySQLDatabase',
    "server" => 'localhost',
    "username" => 'myusername',
    "password" => 'mypassword',
    "database" => 'mydb',
    "path" => '/tmp/mysql5.sock',
);
于 2012-11-21T07:55:53.063 に答える
0

この方法で mysql サーバーに接続しようとしたことはありません。しかし、インストーラーがこのようなホスト名を認識できない可能性があります。手動で _config.php ファイルを記述してから /dev/build を実行すると、うまくいく可能性があります。

約:

I couldn't find a database server on 'localhost': Connecting to 3.22, 3.23 & 4.0 servers is not supported

SilverStripe には mysql データベース バージョン 5 が必要ですが、mysql サーバーが up2date ではない可能性がありますか?

于 2012-10-30T17:06:13.510 に答える