У меня есть таблица, которая содержит user_id
различных пользователей со многими другими индексированными столбцами идентификаторов сторонних инструментов, которые они используют.
Например, таблица users
user_id | user_name | zendesk_id | mailchimp_id | todoist_id
У нас есть кроны, настроенные на попадание этих третьих лиц в список пользователей, чтобы в нашей базе данных были добавлены новые пользователи.В случае изменения user_name
в третьей стороне, мы также хотим обновить эту информацию с нашей стороны, чтобы сохранить синхронизацию.
user_id
- это первичный ключ с автоматическим приращением.все сторонние сервисные столбцы (например, zendesk_id
) являются уникальными и индексируются.
В соответствии с документацией mysql, автоинкремент не будет работать должным образом при индексировании других столбцов (см. аналогичный, но не повторяющийся вопрос, объясняющий это: ON DUPLICATE KEY + AUTO INCREMENT проблема mysql )
Так как у mysql есть эта задокументированная проблема, мой вопрос таков:
Как сохранить разумно чистое авто-инкремент на user_id
, когда я получаю полные списки пользователей от этих третьих лиц для добавления новых пользователей и обновления существующих пользователей?