php - 在php中连接db时主机地址问题
问题描述
我最近遇到了一个奇怪的问题。该应用程序运行良好,但昨天突然显示此错误,这是附加的,它说密码问题,但密码是正确的。为了再次运行应用程序,我尝试将 '127.0.0.1' 替换为 db connect 文件中的 inet 地址,并且应用程序现在工作正常。有人知道为什么“127.0.0.1”不起作用。目前,它有 inet 地址,我担心将来会出现新问题。
提前致谢。
解决方案
没有更多信息,很难准确地说。但首先,你应该远离 mysql_connect。这是来自 PHP.net 的引用
警告
此扩展在 PHP 5.5.0 中被弃用,并在 PHP 7.0.0 中被删除。相反,应该使用 MySQLi 或 PDO_MySQL 扩展。另请参阅 MySQL:选择 API 指南。此功能的替代方案包括:
mysqli_connect() PDO::__construct()
除此之外,我想说的是,用户 root 似乎被配置为只能从特定域访问。如 root@myhostname 而不是 root@localhost。
最简单的检查方法是:
SHOW GRANTS;
并确保 root@localhost 或 root@% 具有访问权限。如果不
REVOKE ALL PRIVILEGES FROM root@whatever;
GRANT ALL PRIVILEGES ON yourDatabaseName . * TO 'root'@'localhost'
您可以为 root@% 设置它,但从安全角度来看,这是一个坏主意。
推荐阅读
- outlook - 通过 COM 发送邮件时如何防止 Win Terminal Server 2019 上的 Outlook 安全弹出窗口?
- angular - 将多个网站重定向到 C#.net 中的单个域
- android - 如何通过包含依赖项的 gradle 制作 jar
- angular - StaticInjectorError(AppModule)[NbOAuth2AuthStrategy -> InjectionToken Window];NullInjectorError: No provider for InjectionToken Window
- heroku - 如何从 heroku 的 porstgreSQL 备份中只下载特定的表?
- javascript - 将 Tagify javascript 数组转换为字符串
- node.js - iisnode 无法在 Windows 10 家庭版上运行
- python - robotframework rebot --merge 与自定义报告而不是 report.html
- php - 卡夫卡消息重复?
- javascript - 如何在条件语句中添加“如果没有点击”