I want to run the created Laravel application.
Locallyphp artisan serve
When I type a command and try to log in to the app
SQLSTATE[HY000] [1045] Access denied for user'homestead'@'localhost' (using password: YES)
And I get an error message from the database.
.env
APP_NAME=stories
APP_ENV=local
APP_KEY=base64:nsHYic1BkVCvl4ZwLm3uHGpkUEkVO2UFM+0HNeG1wfc=
APP_DEBUG=true
APP_URL=http://laravelstories.work
LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
config/database.php
<?php
use Illuminate\Support\Str;
return [
/*
|------------------------------------------------- -------------------------
| Default Database Connection Name
|------------------------------------------------- -------------------------
|
| Here you may specify which of the database connections below you wish
| to use as your default connection for all database work. Of course
| you may use many connections at once using the Database library.
|
*/
'default' =>env('DB_CONNECTION','mysql'),
/*
|------------------------------------------------- -------------------------
| Database Connections
|------------------------------------------------- -------------------------
|
| Here are each of the database connections setup for your application.
| Of course, examples of configuring each database platform that is| supported by Laravel is shown below to make development simple.
|
|
| All database work in Laravel is done through the PHP PDO facilities
| so make sure you have the driver for your particular database of
| choice installed on your machine before you begin development.
|
*/
'connections' =>[
'sqlite' =>[
'driver' =>'sqlite',
'url' =>env('DATABASE_URL'),
'database' =>env('DB_DATABASE', database_path('database.sqlite')),
'prefix' =>``,
'foreign_key_constraints' =>env('DB_FOREIGN_KEYS', true),
],
'mysql' =>[
'driver' =>'mysql',
'url' =>env('DATABASE_URL'),
'host' =>env('DB_HOST', '127.0.0.1'),
'port' =>env('DB_PORT', '3306'),
'database' =>env('DB_DATABASE','homestead'),
'username' =>env('DB_USERNAME','homestead'),
'password' =>env('DB_PASSWORD','secret'),
'charset' =>'utf8',
'collation' =>'utf8_unicode_ci',
'prefix' =>``,
'prefix_indexes' =>true,
'strict' =>true,
'engine' =>null,
'options' =>extension_loaded('pdo_mysql') ?array_filter((
PDO::MYSQL_ATTR_SSL_CA =>env('MYSQL_ATTR_SSL_CA'),
]): [],
],
'pgsql' =>[
'driver' =>'pgsql',
'url' =>env('DATABASE_URL'),
'host' =>env('DB_HOST', '127.0.0.1'),
'port' =>env('DB_PORT', '5432'),
'database' =>env('DB_DATABASE','forge'),
'username' =>env('DB_USERNAME','forge'),
'password' =>env('DB_PASSWORD', ``),
'charset' =>'utf8',
'prefix' =>``,
'prefix_indexes' =>true,
'schema' =>'public',
'sslmode' =>'prefer',
],
'sqlsrv' =>[
'driver' =>'sqlsrv',
'url' =>env('DATABASE_URL'),
'host' =>env('DB_HOST','localhost'),
'port' =>env('DB_PORT', '1433'),
'database' =>env('DB_DATABASE','forge'),
'username' =>env('DB_USERNAME','forge'),
'password' =>env('DB_PASSWORD', ``),
'charset' =>'utf8','prefix' =>``,
'prefix_indexes' =>true,
],
],
/*
|------------------------------------------------- -------------------------
| Migration Repository Table
|------------------------------------------------- -------------------------
|
| This table keeps track of all the migrations that have already run for
| your application. Using this information, we can determine which of
| the migrations on disk haven't actually been run in the database.
|
*/
'migrations' =>'migrations',
/*
|------------------------------------------------- -------------------------
| Redis Databases
|------------------------------------------------- -------------------------
|
| Redis is an open source, fast, and advanced key-value store that also
| provides a richer body of commands than a typical key-value system
| such as APC or Memcached. Laravel makes it easy to dig right in.
|
*/
'redis' =>[
'client' =>env('REDIS_CLIENT','phpredis'),
'options' =>[
'cluster' =>env('REDIS_CLUSTER','redis'),
'prefix' =>env('REDIS_PREFIX', Str::slug(env('APP_NAME','laravel'),'_').'_database_'),
],
'default' =>[
'url' =>env('REDIS_URL'),
'host' =>env('REDIS_HOST', '127.0.0.1'),
'password' =>env('REDIS_PASSWORD', null),
'port' =>env('REDIS_PORT', 6379),
'database' =>env('REDIS_DB', 0),
],
'cache' =>[
'url' =>env('REDIS_URL'),
'host' =>env('REDIS_HOST', '127.0.0.1'),
'password' =>env('REDIS_PASSWORD', null),
'port' =>env('REDIS_PORT', 6379),
'database' =>env('REDIS_CACHE_DB', 1),
],
],
];
What I tried
I tried to fix it by referring to the following cases.
Referenced site
Referenced site
-
Answer # 1
-
Answer # 2
The following causes and investigations will help identify the cause.
1
Make sure you can connect using the MySQL client:$mysql --host=127.0.0.1 --user=homestead --password homestead
Or:
$mysql --host=localhost --user=homestead --password homestead
If you can connect: Most likely there is a problem with your Laravel application
If you can't connect: Most likely there is a database problem2
Let's check the log on the MySQL sideIf the log is not output,
Make the following settingsMySQL
When you restart/var/log/mysql/error
It seems that the log is output to:[mysqld] :#Enter a name for the error log file. Otherwise a default name will be used. log_error = /var/log/mysql/error :#defaults to 1.If the value is >1, 1, aborted connections and access-denied errors for new connection attempts are written to the error log log_warnings = 2
Reference: logging-Log MySQL login attempts-Server Fault
Related articles
- laravel - i want to display an error message when a validation error occurs in the select box
- i deployed the laravel + mysql + vue app on heroku, but i get a 500 error in the api part
- i want to use npm error mysql in laravel with js
- how to create a custom error message in laravel
- error when upgrading laravel 6x → 7x cannot be resolved
- ruby - causes of mysql error when starting unicorn on ec2
- mysql - mariadb suddenly got an error and couldn't connect to the local server
- error when starting service in mysql
- error is output periodically by laravel
- php - laravel: i want to resolve the error target class [***] does not exist
- php - laravel can't access local mysql
- [flask + sqlalchemy] i want to use mysql, but i get a sqlite error
- i get an error in mysql and can't move forward! ??
- laravel - error "your requirements could not be resolved to an installable set of packages"
- mysql error library not loaded: resolving libmysqlclient18dylib (loaderror)
- reflection of table definition in mysql by laravel migration does not work well
- laravel58 error with laravel-mix
- laravel deployed to mixhost is not the top page 404 error i want to check httpdconf
- javascript - error message display when the radio button is not selected
- can you tell me what to do with the laravel sqlstate [42s21] error?
- reflection of table definition in mysql by laravel migration does not work well
- php - laravel relation cannot be defined
- php - regarding when extracting laravel relation defined data
- mysql - "database seeding completed successfully" is displayed using seeder, but it is not inserted in the db
- php - laravel can't access local mysql
- php - about the multiple structure of laravel's many-to-many relations
- php - sqlstate [hy000]: general error: 1364 user registration is not possible due to an error
- i want to take data from the database with laravel and display it
- i want to laravel post and register it in the database
- [php/laravel] i want to display all of a large amount of dom
.env
Are the DB name and user name shown in the page correct?This part.
Please confirm whether to put it in DB directly with mysql,
.env
I think it's better to review the settings for to see if they are correct..env
After modifying the file$php artisan config:clear
I hope you can delete the cache with.