【问题标题】:WordPress - MySQL Auto Increment User IDWordPress - MySQL 自动增量用户 ID
【发布时间】:2016-03-14 13:10:13
【问题描述】:

我希望运行两个定期同步的WordPress 实例。

我要这样做的方法是在每个不同的地方设置自动增量偏移量。

例如,在实例 1 上,用户 ID 为 1,3,5,7 等。在实例 2 上,用户 ID 为 2,4,6,8 等。

WordPress 中有用户函数wp_insert_user,我想为新用户的数据库插入添加一个过滤器。

问题是我看不到直接在插入之前或与插入相关的过滤器。所以我被困在如何实现这一目标上。

该函数位于wp-includes\user.php 文件的第 1856 行,其中第 2060 行是新用户的插入语句:

$wpdb->insert( $wpdb->users, $data + compact( 'user_login' ) );
$user_id = (int) $wpdb->insert_id;

有人可以帮忙吗?我只需要指出正确的方向,就像我说我不确定我需要采取的方向,但想确保我使用的代码符合WordPress framework

【问题讨论】:

  • 谢谢埃米尔;这些设置是否只是数据库范围 - 而不是 MySQL 范围?因为我不希望同一台服务器上的其他数据库设置为新值。

标签: mysql wordpress auto-increment sql-insert


【解决方案1】:

直接在 MySQL 中配置。我假设您要同步所有表,在这种情况下,您可能希望始终递增 2。您可以使用auto_increment_increment 更改全局 auto_increment 间隔:

SET GLOBAL auto_increment_increment=2;

然后将每个实例配置为具有不同的auto_increment_offset

SET GLOBAL auto_increment_offset=1;
SET GLOBAL auto_increment_offset=2;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-03
    • 1970-01-01
    • 2011-12-26
    • 2017-05-11
    • 2021-05-01
    • 2011-10-22
    相关资源
    最近更新 更多