将列添加到表时,Wordpress post_date 默认值无效

时间:2021-02-01 06:06:08

标签: mysql wordpress phpmyadmin

每当我尝试使用 phpmyadmin 将新列添加到我的 Wordpress 数据库的 wp_posts 表时,我总是收到此错误:

#1067 - 'post_date' 的默认值无效

在网上进行了一些搜索后,我发现其他地方发布的解决方案都不适合我。我发现的第一个解决方案建议我更改 sql_mode 设置(例如:ERROR 1067 (42000): Invalid default value for 'created_at'),但是当我尝试这样做时,我被告知我需要“超级”权限。

当我尝试按照此处所述how to add super privileges to mysql database? 使用以下代码为自己提供超级特权时:

GRANT SUPER ON . 给 'username'@'localhost' 由 'mycpanelaccountpassword' 识别;

我收到一条错误消息:

#1045 - 拒绝用户访问

我尝试寻找 phpmyadmin 的任何部分,这些部分看起来像是编辑用户权限的地方,但没有找到。我确实在 information_schema 数据库的 user_privilages 表中找到了一个用户的条目。该表具有用于 GRANTEE、TABLE_CATALOG、PRIVILAGE_TYPE 和 IS_GRANTABLE 的列。该表中唯一一行的值是我尝试用来向用户授予超级权限的用户名、def、用法和否。我无法编辑这些值,因为根据 phpmyadmin “当前选择不包含唯一列”。 COLUMN_PRIVILAGES 表根本没有任何条目。

毕竟我想也许我可以简单地将 post_date 列的默认值更改为 NULL 或除零以外的其他值。当我尝试时,我被告知 post_date_gmt 列也有一个无效的默认值。有没有办法用相同的 SQL 语句设置两者的默认值,这样一个无效的不妨碍另一个被修复?

因此,由于我无法给自己超级权限,因此无法更改 sql_mode,我该如何在 wp_posts 表中添加一列?

更新:原来我需要为 mysql 用户设置密码。但是在我这样做并运行命令授予超级权限之后,我收到了一些关于外键的错误,现在我在 phpmyadmin 中根本无法访问任何数据库。

0 个答案:

没有答案