MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

久しぶりの投稿です。

色々な環境が変わり、暫く勉強が出来ませんでしたが、9月中旬からまた勉強を再開しました。

今回はLaravelとMysqlの接続が出来ないという沼に落ちました。

解決するのに5日かかりました(´;ω;`)

自分がまた見返せる用と、php artisan migrateで悩んでいる人の役に立てたらと思い、ここにメモしておきます。

私が使っているのはWindows、MAMP、PowerShellです。

Laravelをインストールした後、Mysqlにテーブルを作るためにPowerShellでphp artisan migrateを入力しましたが、エラーが発生。

エラー文↓

Illuminate\Database\QueryException : could not find driver (SQL: select * from information_schema.tables where table_schema = laravel_task and table_name = migrations and table_type = 'BASE TABLE')

at C:\MAMP\htdocs\task_test\vendor\laravel\framework\src\Illuminate\Database\Connection.php:669
665| // If an exception occurs when attempting to run a query, we'll format the error
666| // message to include the bindings with SQL, which will make this exception a
667| // lot more helpful to the developer instead of just the database's errors.
668| catch (Exception $e) {
> 669| throw new QueryException(
670| $query, $this->prepareBindings($bindings), $e
671| );
672| }

ドライバーが足りていないようなのでphpinfoでPDOドライバがあるか確認、あったけどとりあえずphp.iniの中にあるextension=pdo_mysqlのコメントをはずしました。

次にphpinfoでextension_dirでMAMPが読み込まれているか確認、ありました。

でまたphp artisan migrateを入力すると、また別のエラー文が発生。

Illuminate\Database\QueryException : SQLSTATE[HY000] [2002] 対象のコンピューターによって拒否されたため、接続できませんでした。
(SQL: select * from information_schema.tables where table_schema = laravel_task and table_name = migrations and table_type = 'BASE TABLE')

at C:\MAMP\htdocs\task_test\vendor\laravel\framework\src\Illuminate\Database\Connection.php:669
665| // If an exception occurs when attempting to run a query, we'll format the error
666| // message to include the bindings with SQL, which will make this exception a
667| // lot more helpful to the developer instead of just the database's errors.
668| catch (Exception $e) {
> 669| throw new QueryException(
670| $query, $this->prepareBindings($bindings), $e
671| );
672| }
どうやらDB側か、MAMPの設定が違う可能性あり。

もしや?と思いMAMPのMysqlのportが8889なのでDB_POSTを3306から8889に変更、ついでにphp.iniのmysqli.default_portを3306から8889に変更すると、mysqlにテーブルが追加されるようになりました。

とりあえず一安心です。

またエラーにぶつかってきます(´;ω;`)

  • ローカル環境にWordPressを構築しようとして以下のエラーが出て困っています。
    検索で解決策を探してみたものの当てはまるような情報が見つけられませんでした。
    解決にご協力いただけますと嬉しいです。

    ・XAMPP 8.11(現時点での最新)
    ・WordPress 5.8.3(現時点の最新)
    ・手順
    こちらのページを参考にしています。
    https://www.sungrove.co.jp/wordpress-xampp/
    ・エラー箇所
    XAMPPインストール
    Apach、MySQL起動
    phpMySQLadminでDB作成
    WordPressをダウンロードし \xampp\htdocs\ に配置
    WordPress起動 ⇐ここでエラー中
    ・エラー内容
    「このサイトで重大なエラーが発生しました」と表示される
    ・やったこと
    wp-config.phpが作られていなかったので、試しにデフォルトで入っているサンプル(wp-config-sample.php)から、ファイルを手作成し、DB名とユーザー名を埋めてから再度WordPressの起動を行いました。その結果以下のエラーが表示されるようになりました。
    Fatal error: Uncaught mysqli_sql_exception: Table '【DB名】.wp_options' doesn't exist in C:\xampp\htdocs\wordpress\wp-includes\wp-db.php:2056 Stack trace: #0 C:\xampp\htdocs\wordpress\wp-includes\wp-db.php(2056): mysqli_query(Object(mysqli), 'SELECT option_n...') #1 C:\xampp\htdocs\wordpress\wp-includes\wp-db.php(1945): wpdb->_do_query('SELECT option_n...') #2 C:\xampp\htdocs\wordpress\wp-includes\wp-db.php(2695): wpdb->query('SELECT option_n...') #3 C:\xampp\htdocs\wordpress\wp-includes\option.php(284): wpdb->get_results('SELECT option_n...') #4 C:\xampp\htdocs\wordpress\wp-includes\functions.php(1730): wp_load_alloptions() #5 C:\xampp\htdocs\wordpress\wp-includes\load.php(752): is_blog_installed() #6 C:\xampp\htdocs\wordpress\wp-settings.php(159): wp_not_installed() #7 C:\xampp\htdocs\wordpress\wp-config.php(98): require_once('C:\\xampp\\htdocs...') #8 C:\xampp\htdocs\wordpress\wp-load.php(50): require_once('C:\\xampp\\htdocs...') #9 C:\xampp\htdocs\wordpress\wp-blog-header.php(13): require_once('C:\\xampp\\htdocs...') #10 C:\xampp\htdocs\wordpress\index.php(17): require('C:\\xampp\\htdocs...') #11 {main} thrown in C:\xampp\htdocs\wordpress\wp-includes\wp-db.php on line 2056

  • ​以下のように突然xamppのMySQLがエラーで使えなくなりました。

    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    以下をみつけたので対処

    ​XAMPPのMySQLが起動しない(Error: MySQL shutdown unexpectedly.)​

    直りました

    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    しかしながらアプリ起動で、
    DB接続エラー SQLSTATE[HY000] [2002] 対象のコンピューターによって拒否されたため、接続できませんでした。
    となりました

    port=3306をport=8881にしたのを
    port=3306に戻してMySQL再起動
    最初のエラーする状態にもどしたのに
    なぜかエラーしなくなりました

    DBアクセスできました。

    しかしながら、作成済みのDBテーブルが破壊されていたので、
    テーブルを再作成で復旧。

    いままで作成したDBデータが消滅(最悪)。

    xamppはデバッグ目的とするべきで、重要なデータを
    保存すべきではないです。

    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    MySQL全機能バイブル 現場で役立つA to Z リファレンスマニュアルの [ 鈴木啓修 ]​

    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    15時間でわかる MySQL集中講座【電子書籍】[ 馬場俊彰 ]​​
    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    初めてのPHP & MySQL第2版 [ ミシェル・E.デイヴィス ]​​
    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    Head first PHP & MySQL 頭とからだで覚えるWebアプリケーション開発の基本 [ リン・ベイフリー ]​​
    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    実践マスターPHP+MySQL PHP5対応 [ 小島まさご ]​​
    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    詳細!PHP7+MySQL入門ノート [ 大重美幸 ]​​
    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    現場で使えるMySQL (DB magazine selection) [ 松信嘉範 ]​​
    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    【中古】 MySQLコマンドブック /田中ナルミ,阿部忠光【著】 【中古】afb​​
    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    【中古】 エンジニアのためのMySQL運用管理大全 MySQLサーバの管理・運営がよくわかる /高橋和秀【著】 【中古】afb​​
    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    PHP7+MariaDB/MySQLマスターブック [ 永田順伸 ]​

    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    【中古】XAMPPではじめる全部無料のかんたん+最強自宅サ-バ-for Windows /ラトルズ/林和孝(単行本)​​
    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    詳細!PHP 8+MySQL 入門ノート XAMPP+MAMP対応 [ 大重美幸 ]​​
    MAMP 対象の コンピューター によって拒否 され たため 接続 できません で した

    【中古】作りながら基礎から学ぶPHPによるWebアプリケ-ション入門 XAMPP/jQuery/HTML5で作るイマドキ /秀和システム/清野克行(単行本)​​