Я импортировал БД из локальной машины на серверную машину. При импорте базы данных значения набора символов для БД устанавливаются по умолчанию по умолчанию на «Latin». Я изменил набор символов на «utf8
» для базы данных. Но хранимая процедура значений сортировки базы данных не изменяется. В настоящее время это «latin1_swedish_ci
». Как изменить значения сортировки базы данных от «latin1_swedish_ci
» до «utf8_general_ci
» для всех хранимых процедур.Изменение хранимой процедуры MySQL 'Database Collation' name
SELECT DEFAULT_CHARACTER_SET_NAME, DEFAULT_COLLATION_NAME
FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = DB_Name;
USE DB_Name;
ALTER DATABASE DB_Name
DEFAULT CHARACTER SET = utf8
DEFAULT COLLATE=utf8_general_ci;
SET NAMES UTF8;
Заранее спасибо.
Один из вариантов - ПРОЦЕДУРА РАЗМОРАЖИВАНИЯ И ПРОЦЕДУРА СОЗДАНИЯ. Другой вариант (менее рекомендуется) может вручную обновить столбец 'db_collation' таблицы' proc' базы данных 'mysql'. Идеальным является правильная настройка вашего сервера MySQL, а затем импорт. – wchiquito
Можете ли вы снова запустить импорт? Я попытаюсь решить эту проблему до импорта. Его проще указать правильную кодировку перед началом импорта. В вашей дампе db содержится команда SET NAMES? – olegsv
@olegsv Да, вы правы. Я решил эту проблему перед импортом дампа и дампа БД с помощью SET NAMES. – Nisar