我对 Linux 和软件包还只是个菜鸟,更不用说网站和数据库了,但是,我已经按照本指南操作,成功完成了所有步骤,并且有一个可以通过网络访问的 wordpress 网站,我所遵循的教程可以在以下网址找到这里。
系统信息:Linux 5.19.0-21-generic,Ubuntu 22.10
我通过 SSH 连接到我的机器,并通过终端安装并设置以下内容:
- 阿帕奇2
- MariaDB/MySQL(我不太明白它们之间的区别,也不太明白为什么要安装这两个)
- 视频中显示的其他配置步骤(文件夹的 chown、新 wordpress 用户的数据库权限等)
现在,当尝试摆弄 word press 的插件并进行故障排除时,我想在 MySQL 数据库中查看一些东西,但由于我没有经验,通过查询进行导航很困难。我知道我应该能够使用 /phpmyadmin 通过 GUI 进行导航,因此我自然而然地按照其他指南安装 phpmyadmin 并进行配置,而不知道它是否已经设置好。在选择以下选项后,配置进行到一半:
- 是(配置通用数据库?)
- SQL 应用程序密码(我将其密码设置为我生成的新密码?)
- 确认密码
- apache2(Web 服务器自动重新配置)
然后我在安装数据库时遇到访问错误:
错误 1045 (28000):拒绝用户“root”@“localhost”访问(使用密码:否)。您的选项包括:
- 中止-导致操作失败;您需要降级、重新安装……等等
- 重试-再次提示所有配置问题...等等
- 重试(跳过问题)-立即再次尝试操作,跳过所有问题......等等
- ignore - 继续操作,忽略 dbconfig-common 错误。这通常会导致此包没有可运行的数据库……等等
这并不重要,因此,为了快速解决问题,我尝试了所有选项,并尝试查看 MySQL 用户帐户(我一直使用 root,但确实更改了它的默认密码,该密码为空),但我仍然卡住了,我担心我的 phpmyadmin 配置处于糟糕的状态,但我不确定如何从头开始。我最好只是重新安装 phpmyadmin,而不必重做 MySQL/Apache2/Wordpress,并希望了解我做错了什么,以便我可以手动采取纠正措施。
我也试图遵循,看起来同样的问题我在这里,但是纠正配置行对我根本没有帮助。
答案1
你不能 - 并且不应该root
–除非您是第一次配置系统或修复某些非常非常错误的问题,否则请连接到 MySQL帐户。这是因为人们在设置数据库时过去一直使用非常弱的密码,因此对于无所事事的傻瓜来说,这些密码非常容易被“破解”。因此,MySQLroot
在大约 5 年前改变了访问方式。
相反,您需要创建单独的 MySQL 帐户:
- 一个适用于 WordPress,仅限于仅有的WordPress 数据库
- 一个用于管理,phpMyAdmin 使用它来管理整个 MySQL 安装
假设您还没有关闭 MySQLroot
账户,您可以按照以下步骤操作:
root
通过终端(或 SSH) 连接到 MySQL :
笔记:您可能会被要求提供您的服务器此处使用的密码sudo mysql
sudo
。这与您的 MySQL 密码不同。- 如果您还没有这样做,请为您的 WordPress 安装创建一个数据库:
笔记:通过将CREATE DATABASE `wordpress` DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
CHARSET
和COLLATE
值设置为指定的值,您将不会遇到诸如表情符号、非英文字符等问题。 - 如果您还没有这样做,请为您的 WordPress 安装创建一个 MySQL 用户帐户:
笔记:一定要改变CREATE USER 'wp_site'@'localhost' IDENTIFIED BY 'superSecretPassword!123';
superSecretPassword!123
一些不那么愚蠢的事情。 - 授予 WordPress 用户帐户使用 WordPress 数据库执行所有操作的权限,并且仅有的WordPress 数据库:
GRANT ALL ON `wordpress`.* TO 'wp_site'@'localhost';
- 创建 phpMyAdmin 将使用的 MySQL 管理员帐户:
笔记:确保不要重复使用密码,特别是在连接到互联网的服务器上。CREATE USER 'silently'@'localhost' IDENTIFIED BY 'superSecretAdminPassword!123';
- 授予该管理员帐户完全权限:
GRANT ALL ON *.* TO 'silently'@'localhost' WITH GRANT OPTION;
- 以该身份退出 MySQL,
root
并且永远不要再使用该帐户。任何管理都应通过您创建的新管理员帐户进行。仅root
在出现严重故障时使用。
欢迎来到系统管理的世界