4

私はWeb開発にかなり慣れていないので、問題が何であるかを見つけようとして助けを必要としています。MySQL 5.6.10をインストールしましたが、過去5年間現在公開されているWebサイトのsrcを更新するタスクが与えられました。コードは変更されておらず、他の開発者のローカルマシンでも機能します。サーバーは5.0.51bを実行していて、構文エラーをなくそうとして5.5.30にダウングレードしました。エラーは、SET OPTION SQL_BIG_SELECTS=1が特定のバージョンでSETSQL_BIG_SELECTSに非推奨になったためです。サーバーが実行しているバージョンが原因で、構文を変更できません。そこで、バージョンを5.5.30に下げることにしました。

ダウングレード後の私の問題は次のとおりです。

Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user
''@'localhost' (using password: NO) in C:\Program Files (x86)\Apache Software
Foundation\Apache2.2\htdocs\****\src\www\include\func\func.db.php on line 47

接続にMySQLWorkbenchを使用していますが、接続やユーザーにパスワードが関連付けられていません。ローカルホストから正常に動作する、ライブではない別のプロジェクトがあります。私のvhostファイルとhostファイルはすべて、これが機能するための適切な構文を持っています(他のプロジェクトで確認済み)。これはすべて適切に機能し、昨日はvhostを介してページを正常に表示できました。インデックスページをプルするためのすべての設定に問題はありませんでした。唯一の問題はMySQLバージョンの問題でした。この問題を解決するにはどうすればよいですか?ワークベンチで接続を再作成し、すべてのインスタンスを削除して再作成してみました。私は困惑しています。どんな助けでも大歓迎です。

4

4 に答える 4

4

このエラーが表示されるのは、mysql データベースが正しく接続されていないためです。

mysql_connect("HOST","USER","PASSWORD")

ホスト、ユーザー名、パスワードが正しいことを確認してください

于 2013-03-20T18:13:58.373 に答える
2

アップグレードしたのは MySQL だけですか? PHP をアップグレードして、register_globals がオンになっていない可能性はありますか? あなたがそれをオフにしていて、同僚がオンにしている場合、これはあなたが見ている違いを説明することができます.

http://php.net/manual/en/security.globals.php

于 2013-03-20T18:17:29.907 に答える
1

エラーをよく見ると、何が間違っているかを示していることがわかります (通常、エラー レポートの目的は何ですか)。

Access denied for user
''@'localhost' (using password: NO)

具体的に見て:

''@'localhost'
^^

ユーザーが指定されていないことがわかります。接続するユーザーを指定する必要があります。

mysql_connect("HOST","USER","PASSWORD")

これはmysql_select_db電話の前に来ます。

MySQL Connect & MySQL Select DB

注意: MySQL_* 関数は廃止されたため、PHP 5.5 にアップグレードしないでください。コードを変更したくないので、これを言います。

于 2013-03-20T18:22:00.800 に答える
1

返されたエラーで見たところ、MySQL への接続に使用するユーザー名を接続に渡していませんでした。

于 2013-03-20T18:15:33.127 に答える