前提・実現したいこと
『CakePHP超入門』の本でPHPを勉強中ですが、マイクレーションを使う章で、マイグレーションファイルは作成できていますが、その後のマイグレーションを実行しようとするとエラーになってしまいます(5章276P)。
エラー内容としては、DBに繋がらないようなものだと思うのですが、現在5章で、その章までは問題なく、localhostで繋がってサンプルなども確認できていました。
具体的に書けていないかも知れませんが、助けて下さい。お願いします。
発生している問題・エラーメッセージ
Exception: There was a problem connecting to the database: SQLSTATE[HY000] [2002] No such file or directory in [/Applications/MAMP/htdocs/mycakeapp/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/MysqlAdapter.php, line 121] 2019-01-07 16:19:18 Error: [InvalidArgumentException] There was a problem connecting to the database: SQLSTATE[HY000] [2002] No such file or directory in /Applications/MAMP/htdocs/mycakeapp/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/MysqlAdapter.php on line 121 Stack Trace: #0 /Applications/MAMP/htdocs/mycakeapp/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/PdoAdapter.php(136): Phinx\Db\Adapter\MysqlAdapter->connect() #1 /Applications/MAMP/htdocs/mycakeapp/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/AdapterWrapper.php(469): Phinx\Db\Adapter\PdoAdapter->getConnection() #2 /Applications/MAMP/htdocs/mycakeapp/vendor/cakephp/migrations/src/CakeAdapter.php(56): Phinx\Db\Adapter\AdapterWrapper->getConnection() #3 /Applications/MAMP/htdocs/mycakeapp/vendor/cakephp/migrations/src/Command/CommandTrait.php(78): Migrations\CakeAdapter->__construct(Object(Phinx\Db\Adapter\TimedOutputAdapter), Object(Cake\Database\Connection)) #4 /Applications/MAMP/htdocs/mycakeapp/vendor/robmorgan/phinx/src/Phinx/Console/Command/Migrate.php(74): Migrations\Command\Migrate->bootstrap(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #5 /Applications/MAMP/htdocs/mycakeapp/vendor/cakephp/migrations/src/Command/CommandTrait.php(35): Phinx\Console\Command\Migrate->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #6 /Applications/MAMP/htdocs/mycakeapp/vendor/cakephp/migrations/src/Command/Migrate.php(67): Migrations\Command\Migrate->parentExecute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #7 /Applications/MAMP/htdocs/mycakeapp/vendor/symfony/console/Command/Command.php(255): Migrations\Command\Migrate->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #8 /Applications/MAMP/htdocs/mycakeapp/vendor/symfony/console/Application.php(901): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #9 /Applications/MAMP/htdocs/mycakeapp/vendor/symfony/console/Application.php(262): Symfony\Component\Console\Application->doRunCommand(Object(Migrations\Command\Migrate), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #10 /Applications/MAMP/htdocs/mycakeapp/vendor/symfony/console/Application.php(145): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #11 /Applications/MAMP/htdocs/mycakeapp/vendor/cakephp/migrations/src/Shell/MigrationsShell.php(108): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #12 /Applications/MAMP/htdocs/mycakeapp/vendor/cakephp/cakephp/src/Console/Shell.php(532): Migrations\Shell\MigrationsShell->main('migrations', 'migrate') #13 /Applications/MAMP/htdocs/mycakeapp/vendor/cakephp/migrations/src/Shell/MigrationsShell.php(164): Cake\Console\Shell->runCommand(Array, true, Array) #14 /Applications/MAMP/htdocs/mycakeapp/vendor/cakephp/cakephp/src/Console/CommandRunner.php(342): Migrations\Shell\MigrationsShell->runCommand(Array, true) #15 /Applications/MAMP/htdocs/mycakeapp/vendor/cakephp/cakephp/src/Console/CommandRunner.php(164): Cake\Console\CommandRunner->runShell(Object(Migrations\Shell\MigrationsShell), Array) #16 /Applications/MAMP/htdocs/mycakeapp/bin/cake.php(12): Cake\Console\CommandRunner->run(Array) #17 {main}
該当のソースコード
PHP
1//121 2try { 3 $db = new \PDO($dsn, $options['user'], $options['pass'], $driverOptions); 4 } catch (\PDOException $exception) { 5 throw new \InvalidArgumentException(sprintf( 6 'There was a problem connecting to the database: %s', 7 $exception->getMessage() 8 )); 9 }
試したこと
色々探しましたが、下のサイトが自分の状況に合ってたので試しましたが、解決できませんでした。
https://qiita.com/kzyamax/items/69641125798266502c7b
エラーの内容ラインを調べましたが、何がダメなのかもわかりません。
補足情報(FW/ツールのバージョンなど)
Mac ProでPHP7.2,CakePHP,MAMPでやっています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/01/08 07:02
2019/01/08 07:08
2019/01/08 07:49
2019/01/08 08:09
2019/01/08 08:32
2019/01/08 08:37
2019/01/08 08:46
2019/01/08 08:54
2019/01/08 09:16
2019/01/08 09:24
2019/01/08 09:47
2019/01/08 10:01
2019/01/08 10:07
2019/01/08 10:19
2019/01/08 10:50
退会済みユーザー
2019/01/08 11:03
2019/01/08 11:14
退会済みユーザー
2019/01/08 11:18
2019/01/08 11:22
2019/01/08 11:27
2019/01/08 11:32
2019/01/08 11:47
2019/01/08 11:56
2019/01/08 12:05