ホームページ >バックエンド開発 >PHPの問題 >php7がmysqに接続できません

php7がmysqに接続できません

王林
王林オリジナル
2023-05-07 09:46:06759ブラウズ

PHP7 が MySQL データベースに接続できない問題の解決策

PHP 言語は最も広く使用されているサーバーサイド プログラミング言語の 1 つであり、MySQL は非常に人気のあるリレーショナル データベース管理システムです。 PHP 開発中、データの保存と管理に MySQL を使用することがよくあります。ただし、PHP7 バージョンを使用して MySQL に接続すると、データベースに接続できない場合があります。では、どうすれば解決できるでしょうか?この記事では、PHP7でMySQLデータベースに接続できない問題の解決方法を紹介します。

  1. MySQL ドライバーがインストールされているかどうかを確認してください

PHP7 は以前のバージョンとは異なります。デフォルトでは MySQL 拡張機能がインストールされていないため、手動でインストールする必要があります。したがって、最初のステップは、MySQL ドライバーがシステムにインストールされているかどうかを確認することです。ターミナルで次のコマンドを使用して確認できます。

php -m | grep mysql

出力がない場合は、MySQL ドライバーがシステムにインストールされていないことを意味します。次のコマンドを使用してインストールできます。

sudo apt-get install php7.0-mysql

インストールが完了したら、ターミナルで上記のコマンドを使用して、インストールが成功したかどうかを再度確認できます。

  1. MySQL 設定ファイルを変更する

PHP7 では、MySQL のデフォルトの暗号化方式が元の mysql_native_password から caching_sha2_password に変更されます。したがって、MySQL に接続するときに変更を加える必要があります。そうしないと、データベース接続が失敗します。次の内容を MySQL 構成ファイル my.cnf に追加できます。

[mysqld]
default-authentication-plugin=mysql_native_password

追加が完了したら、MySQL サービスを再起動して有効にします。

  1. MySQL サービスがオンになっているかどうかを確認してください

データベースに接続するときに、MySQL サービスがオンになっていないと接続に失敗します。次のコマンドを使用して、サービスがオンになっているかどうかを確認できます。

sudo service mysql status

サービスがオンになっていない場合は、次のコマンドを使用して開始できます。

sudo service mysql start

サービスがオンになっている場合は、がオンになっていますが、まだ接続できない場合は、もう一度試してください。 MySQL サービスを開始します。

sudo service mysql restart
  1. データベース接続情報が正しいかどうかを確認します。

上記のいずれでもない場合メソッドで問題が解決された場合は、データベースへの接続に関する関連情報が正しいかどうかを確認する必要があります。ユーザー名、パスワード、ホストアドレス、ポート番号などが含まれます。 PHP コードで確認できます コード例:

$servername = "localhost";
$username = "username";
$password = "password";

// 创建连接
$conn = new mysqli($servername, $username, $password);

// 检查连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 
echo "连接成功";

コード内の変数 $servername はホスト アドレス、$username はユーザー名、$password はパスワードです。この情報が正しいかどうかを確認することで、データベースに接続できない理由を特定できます。

結論

以上は、PHP7 が MySQL データベースに接続できない問題の解決策です。 MySQL ドライバーを確認し、MySQL 構成ファイルを変更し、MySQL サービスがオンになっているかどうかを確認し、データベース接続情報が正しいかどうかを確認することで、データベースに接続できない問題は通常解決できます。上記のどの方法でも解決できない場合は、他の問題を考慮する必要があり、より詳細なトラブルシューティングが必要になります。 PHP の開発プロセス中に問題が発生した場合でも、根気よく問題を見つけて解決すれば、プロジェクトを正常に完了できます。

以上がphp7がmysqに接続できませんの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。