Meanwhile, I am facing SQLSTATE[HY000] [1049] Unknown database ‘Laravel’ error in my newly build Laravel app. Therefore, you may be able to fix this error with any of the solution in this Laravel 9 tutorial, it may works with other versions.
SQLSTATE [HY000] [1049] Unknown database
Certainly, SQLSTATE[HY000] [1049] Unknown database error may appears with multiple configuration and cache related reasons. Therefore, you can fix this unknown data error with these possible solution.
1. Laravel is Choosing Wrong Database
Firstly, Your Laravel is choosing wrong database and you need to update the database name and other database settings in Laravel app. For instance, I am writing the possible workaround to fix this issue.
- ENV File – Firstly, you need to change default Laravel database in .env file available on Laravel root.
- If you are unable to find it, your operating system or hosting control panel may be hiding it.
- You can find DB_CONNECTION section in ENV File and change or verify your correct DB_DATABASE name.
- /config/database.php – Secondly, for the production environment, you need to change or confirm your database connection settings in /config/database.php file.
2. Check Laravel Database Connection with Tinker
In addition,
Further, you may corrected everything but still Laravel is choosing wrong database. The error message “SQLSTATE [HY000] [1049] Unknown database ‘laravel'” indicates that the database specified in the Laravel configuration cannot be found or accessed by the application. To resolve this issue, you can follow these steps:
- Check that the database name specified in your Laravel configuration with the database name, you are trying to connect to. You can do this by logging in to your database management system and checking the list of databases.
- Check that the database credentials (username and password) specified in your Laravel configuration are correct and have the necessary privileges to access the database.
- If the database exists and the credentials are correct, check that the database server is running and can be accessed by the application.
- If you are using a local development environment, ensure that the database server is running on your local machine and not on a remote server.
- If you have recently migrated your Laravel application to a new server or environment, ensure that the database schema has been properly migrated and the necessary tables and columns exist.
Once you have resolved the issue, you should be able to connect to the database. After this, run your Laravel application without any issues.