1 заметка с тегом

MySQL

mysqldump с учетом UTF-8

Если мы хотим сделать дамп базы MySQL и сохранить весь utf-8 набор символов, включая эмоджи и прочие радости жизни, то использовать такой классический пример будет очень плохой идеей:

mysqldump -u username -p database > db.dump

Так уже лучше, но эта команда сдампит только utf8, но не utf8mb4:

mysqldump -u username -p database -r db.dump

А вот так, будет совсем хорошо:

mysqldump -u username -p database --default-character-set=utf8mb4 --result-file=db.dump

Теперь, базу нужно импортировать на новое место.

Так — плохо:

mysql -u username -p database < db.dump

А вот так — хорошо:

$ mysql -u username -p --default-character-set=utf8mb4 database
mysql> SOURCE db.dump