Перейти к основному содержанию

При восстановлении базы MySQL пропадают эмодзи

SQL

Давно хотел заняться этим вопросом. При резервном копировании и восстановлении базы данных из статей пропадали эмодзи. При этом если отредактировать статью и вставить эмодзи снова, то всё прекрасно сохраняется и отображается.

Восстановление базы MySQL из резервной копии

Не очень страшно, конечно, но неприятно. Нашёл вариант резервного копирования и восстановления, при котором эмодзи не пропадают, по словам автора. Нужно будет попробовать, когда руки дойдут.

Бэкап:

SCHEMA=${2:-mindlevel}
DB_HOST=$1
mysqldump -uroot -ppassword -h$DB_HOST --default-character-set=utf8mb4 --complete-insert --no-create-info $SCHEMA -r ${SCHEMA}_backup.sql

Восстановление:

mysqladmin -uroot -ppassword -h$DB_HOST -f drop $SCHEMA &&
mysql -uroot -ppassword -h$DB_HOST --default-character-set=utf8mb4 < ${SCHEMA}_schema.sql &&
mysql -uroot -ppassword -h$DB_HOST $SCHEMA --default-character-set=utf8mb4 -e "SET NAMES utf8mb4; SOURCE"${SCHEMA}"_backup.sql;"

Пока не проверял, но думаю, следует обратить внимание на два вещи:

  • --default-character-set=utf8mb4 в атрибутах при бэкапе и восстановлении
  • SET NAMES utf8mb4; перед началом восстановления

Теги

 

Похожие материалы

SQL Server 2012 Техническое руководство по обновлению

Ron Talmage, Nigel Sammy, Allan Hirt, Herbert Albert, Antonio Soto, Danilo Dominici, Regis Baccaro, Milos Radivojevic, Jesus Gil, Dejan Sarka, Johan Ahlen, Simran Jindal, Paul Turley, Craig Utley, Larry Barnes, Pablo Ahumada
Это техническое руководство содержит описание процедуры обновления экземпляров SQL Server 2005, SQL Server 2008 и SQL Server 2008 R2 до версии SQL Server 2012.

Теги