Как конвертировать rds mysql latin1 в utf8 - PullRequest
0 голосов
/ 26 мая 2019

Я хочу преобразовать нашу производственную базу данных из latin1 в utf8. Мы используем Amazon RDS MySQL. Пожалуйста, предоставьте шаг за шагом. Будут ли простои?

ALTER DATABASE database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;

ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Я использую приведенный выше запрос для преобразования каждой таблицы.

Это хороший способ? Мне нужно сделать один за другим, или есть ли другой способ сделать за один шаг?

1 Ответ

0 голосов
/ 26 мая 2019

Изменение на сервере PRODUCT всегда имеет решающее значение. Много внимания нужно принять во внимание, прежде чем принимать окончательное решение. Первый вопрос - это действительно шоу-стопор? или ситуация мертвой блокировки? или проблема с производительностью? Если со всем вниманием вы решили, что это необходимо, следует проявлять осторожность выполнить для достижения изменений-

Шаг 1: создание полной резервной копии базы данных.

Шаг 2: Убедитесь, что резервная копия может быть восстановлена. Сделайте несколько копий резервной копии и сохраните на другом сервере. Это поможет восстановить ваши старые данные в случае их случайной потери.

Шаг 3: Сначала внесите необходимые изменения в сервер разработки. Проверьте, работает ли ваше приложение, как и раньше, без каких-либо проблем, особенно если есть доступ к данным для измененной области.

Шаг 4: убедитесь, что все объекты базы данных, такие как (SP, FUNCTION), используют эту таблицу, все еще работают как положено.

Шаг 5: Лучше, если вы сможете задействовать некоторый ресурс QA, прежде чем вносить изменения в среду LIVE.

Шаг 6: Если все вышеперечисленные шаги выполнены успешно, вы можете перейти к изменениям LIVE.

Шаг 7: снова задействуйте ресурс QA, чтобы убедиться, что изменения LIVE также применяются без проблем.

Примечание: Никаких значительных простоев не требуется. Но всегда лучше, если вы можете сохранить доступ к базе данных из приложения во время изменений базы данных. Это гарантирует, что никакие данные не будут мешать во время вставки / редактирования / удаления данных из приложения.

...