YUM 默認源通常只提供 MySQL 5.0/5.1,不支援 utf8mb4 (Emoji、生僻字)。RPM 官方包可直接獲取 5.6+ 版本,獲得完整字符集支援。
MySQL-server-5.6.xx-linux_glibc2.5.x86_64.rpmMySQL-client-5.6.xx-linux_glibc2.5.x86_64.rpmwget https://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-server-5.6.32-1.linux_glibc2.5.x86_64.rpm wget https://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-client-5.6.32-1.linux_glibc2.5.x86_64.rpm
# 安裝 Server 與 Client rpm -ivh MySQL-server-5.6.32-1.linux_glibc2.5.x86_64.rpm rpm -ivh MySQL-client-5.6.32-1.linux_glibc2.5.x86_64.rpm # 啟動服務 service mysql start
/etc/init.d/mysql stop
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('NewPass123!') WHERE USER='root';
mysql> FLUSH PRIVILEGES;
mysql> QUIT
/etc/init.d/mysql restart
mysql -uroot -p'NewPass123!'
# 讀取配置獲取密碼
cat /etc/mysql/debian.cnf
# [client] 節下的 user/password
mysql -u debian-sys-maint -p'從配置讀取的密碼'
mysql> UPDATE user SET Password=PASSWORD('NewPass123!') WHERE USER='root';
mysql> FLUSH PRIVILEGES;
mysql -uroot -p'debian.cnf中的密碼'
mysql> SHOW VARIABLES LIKE 'character_set_%';
mysql> CREATE DATABASE test_db CHARACTER SET utf8mb4;
mysql> CREATE TABLE t (c VARCHAR(10)) CHARSET=utf8mb4;
mysql> INSERT INTO t VALUES ('😀🎉');
mysql> SELECT * FROM t;
/etc/my.cnf 調整 innodb_buffer_pool_size (物理內存 60-70%)log-bin、server-id 啟用主從同步sql_mode=STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTIONmysql_secure_installation 加固安全RPM 安裝 MySQL 5.6 步驟清晰、依賴簡單、版本可控,是無 YUM 源環境下快速部署 utf8mb4 環境的最佳選擇。生產環境建議配合配置管理工具 (Ansible/SaltStack) 實現自動化部署。