【发布时间】:2020-09-11 10:55:51
【问题描述】:
我知道有很多与此问题类似的问题,但没有一个可以帮助我解决问题。
我正在尝试将我的 EC2 实例上的 laravel 项目连接到我的 RDS 实例。
使用时可以成功连接RDS实例并创建表:
mysql -h ....rds.amazonaws.com -u cmadmin -p
但是,当我运行 php artisan migrate 时,我目前收到以下错误:
In Connection.php line 664:
SQLSTATE[HY000] [1045] Access denied for user 'cmadmin'@'ec2_privateIP' (using password: YES) (SQL: select * from information_schema.tables where table_schema = dbname_cm and table_name = migrations)
In Connector.php line 67:
SQLSTATE[HY000] [1045] Access denied for user 'cmadmin'@'ec2_privateIP' (using password: YES)
这是 .env 文件的摘录:
APP_NAME=Laravel
APP_ENV=local
APP_KEY=generatedkey
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost
DB_CONNECTION=mysql
DB_HOST=....rds.amazonaws.com
DB_PORT=3306
DB_DATABASE=dbname_cm
DB_USERNAME=cmadmin
DB_PASSWORD=rfL8zvXnMEzit02
这是 config/database.php 文件的摘录:
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', ''),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', ''),
'username' => env('DB_USERNAME', ''),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_0900_ai_ci',
'prefix' => '',
'strict' => false,
'engine' => null,
'option' => [
PDO::MYSQL_ATTR_SSL_CA => base_path('/var/mysql-cert/dbname_cm-db.pem')
],
],
我什至将以下内容添加到app/Providers/AppServiceProvider.php
public function boot()
{
Schema::defaultStringLength(191);
}
我已经跑过: php工匠缓存:清除 php工匠配置:清除 php工匠配置:缓存
PHP 7.2.24-0ubuntu0.18.04.4 Laravel 框架 5.5.49 AWS RDS:MySQL 8.0.17
mysql> SELECT USER(),CURRENT_USER();
+------------------------+----------------+
| USER() | CURRENT_USER() |
+------------------------+----------------+
| cmadmin@ec2_privateIP | cmadmin@% |
+------------------------+----------------+
mysql> show grants;
| Grants for cmadmin@% |
| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO `cmadmin`@`%` WITH GRANT OPTION |
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| dbname_cm |
| information_schema |
| mysql |
| performance_schema |
+--------------------+
【问题讨论】:
标签: php mysql laravel amazon-ec2 amazon-rds