0

Codeigniter で dev LAMP を実行しています。ただし、ページを読み込もうとすると、データベースに接続できず (データベースは実際には別のサーバー上にあります)、次のエラーが発生します。

A Database Error Occurred

Unable to connect to your database server using the provided settings.

Filename: core/Loader.php

Line Number: 346

私のdatabase.phpはこれです:

$active_group = 'default';
$active_record = TRUE;

$db['default']['hostname'] = 'myhost.com';
$db['default']['username'] = 'myusername';
$db['default']['password'] = 'mypassword';
$db['default']['database'] = 'mytable';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;

「pconnect」および/または「db_debug」を false に変更すると、同じエラーが発生するか、機能しません。他の人が接続して使用できるため、データベースが正常に稼働していることはわかっています。

ただし、ホストの IP アドレスを database.php ファイルに入れると、機能します。DNS をフラッシュしようとしましたが、Google の DNS サーバーに変更しても無駄でした。

単純な mysql_connect の結果は次のとおりです。

A PHP Error was encountered

Severity: Warning

Message: mysql_connect(): php_network_getaddresses: getaddrinfo failed: Name or service    not known

Filename: config/database.php

Line Number: 67

A PHP Error was encountered

Severity: Warning

Message: mysql_connect(): [2002] php_network_getaddresses: getaddrinfo failed: Name or     service not known (trying to connect via tcp://myhost.com:3306)

Filename: config/database.php

Line Number: 67

A PHP Error was encountered

Severity: Warning

Message: mysql_connect(): php_network_getaddresses: getaddrinfo failed: Name or service not known

Filename: config/database.php

Line Number: 67

Could not connect: php_network_getaddresses: getaddrinfo failed: Name or service not known 
4

2 に答える 2

2

これを変更してみてください

$db['default']['db_debug'] = TRUE;

これに:

$db['default']['db_debug'] = FALSE;
于 2013-02-26T11:49:17.517 に答える
1

ドメイン名が正しい IP アドレスに登録されていること、およびホストにこの正確なアドレスの記録があることを確認してください。Web サイトに静的な HTML ファイルを配置してみてください。必要なのは、おそらく「Hello World」というテキストを表示して、ドメイン名を介して Web サイトにアクセスできるようにすることだけです。

スクリプトにドメイン名が正しく挿入されていることと、必要な資格情報をコピーして貼り付けることで PHPMyAdmin (または使用するもの) にログインできることを確認してください (先頭と末尾に空白を入れないでください。注意してください)。

テーブル名に問題がある場合は、そう言うべきです。残りの設定に関しては、私はそれらのどれにも精通していませんが、ここで概説したことで、データベースが機能するはずです.

幸運を。

于 2012-08-22T19:46:49.060 に答える