如何在 Symfony 4 中将数据库连接 "localhost" 更改为“127.0.0.1”?
How can I change database connection "localhost" to "127.0.0.1" in Symfony 4?
根据本题的解析...
What is the Symfony firewall doing that takes so long?
...我尝试在 .env
文件中更改
DATABASE_URL=mysql://root:root@localhost/project
至
DATABASE_URL=mysql://root:root@127.0.0.1/project
以获得更好的性能。
但是我得到一个错误:
An exception occurred in driver:
SQLSTATE[HY000] [2002] Connection refused
Uncaught PHP Exception Doctrine\DBAL\Exception\ConnectionException:
"An exception occurred in driver: SQLSTATE[HY000] [2002] Connection
refused" at
/Users/work/project/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php
line 112
检查数据库本身的用户权限,您的用户可能只允许通过本地主机访问。
SELECT * FROM mysql.user where user = '<username>';
检查主机列。如果你只得到主机 'localhost' 的一行,那么你可以添加另一个具有相同详细信息但对于 127.0.0.1 主机
CREATE USER '<username>'@'127.0.0.1';
SET PASSWORD FOR '<username>'@'localhost' = PASSWORD('<password>');
FLUSH PRIVILEGES;
sql 超出了我的想象,您可能需要仔细检查一下。
根据本题的解析...
What is the Symfony firewall doing that takes so long?
...我尝试在 .env
文件中更改
DATABASE_URL=mysql://root:root@localhost/project
至
DATABASE_URL=mysql://root:root@127.0.0.1/project
以获得更好的性能。
但是我得到一个错误:
An exception occurred in driver: SQLSTATE[HY000] [2002] Connection refused
Uncaught PHP Exception Doctrine\DBAL\Exception\ConnectionException: "An exception occurred in driver: SQLSTATE[HY000] [2002] Connection refused" at /Users/work/project/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php line 112
检查数据库本身的用户权限,您的用户可能只允许通过本地主机访问。
SELECT * FROM mysql.user where user = '<username>';
检查主机列。如果你只得到主机 'localhost' 的一行,那么你可以添加另一个具有相同详细信息但对于 127.0.0.1 主机
CREATE USER '<username>'@'127.0.0.1';
SET PASSWORD FOR '<username>'@'localhost' = PASSWORD('<password>');
FLUSH PRIVILEGES;
sql 超出了我的想象,您可能需要仔细检查一下。