主理人序
这篇文章为什么:为什么要写?因为博主在整理的一篇文章中混入了奇怪的emoji,最终导致全文 destroy;WTF;
Emoji在哪里
😀 😃 😄 😁 😆 😅 😂 🤣 🥲 ☺️ 😊 😇 🙂 🙃 😉 😌 😍 🥰 😘 😗 😙 😚 😋 😛 😝 😜 🤪 🤨 🧐 🤓 😎 🥸 🤩 🥳 😏 😒 😞 😔 😟 😕 🙁 ☹️ 😣 😖 😫 😩 🥺 😢 😭 😤 😠 😡 🤬 🤯 😳 🥵 🥶 😱 😨 😰 😥 😓 🤗 🤔 🤭 🤫 🤥 😶 😐 😑 😬 🙄 😯 😦 😧 😮 😲 🥱 😴 🤤 😪 😵 🤐 🥴 🤢 🤮 🤧 😷 🤒 🤕 🤑 🤠 😈 👿 👹 👺 🤡 💩 👻 💀 ☠️ 👽 👾 🤖 🎃 😺 😸 😹 😻 😼 😽 🙀 😿 😾
存储字符集 utf8 和 utf8mb4 介绍
CREATE DATABASE example_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
MySQL-修改数据库编码格式为utf8mb4
在进行此步骤前,你可以进行数据库备份;
1.登录 MySQL;
mysql -u root -p
#输入数据库登录密码
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| typecho |
+--------------------+
1 rows in set (0.01 sec)
2.查看数据库编码格式;登录MySQL后可以使用show variables like 'character%';
查看数据库编码格式,对应变量名为:character_set_database,博主这里结果为:utf8mb4,已经修改好了;
mysql> show variables like 'character%';
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8mb4 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.00 sec)
2.1查看具体数据库(如typecho)的编码格式:show create database example_db;
mysql> show create database typecho;
+----------+---------------------------------------------------------------------+
| Database | Create Database |
+----------+---------------------------------------------------------------------+
| typecho | CREATE DATABASE `typecho` /*!40100 DEFAULT CHARACTER SET utf8mb4 */ |
+----------+---------------------------------------------------------------------+
1 row in set (0.00 sec)
3.在本文中,名为typecho的数据库是博客对应的数据库(当然,具体以你命名的数据库名称为准);可通过以下命令修改已经存在的 database 预设值;
ALTER DATABASE typecho CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
这样名为 typecho 数据库就可以把 编码格式从 utf8修改为 utf8mb4了;
Typecho-配置config.inc.php以使用Emoji
1.进入网站根目录,找到并编辑 config.inc.php;编辑前记得备份;
cp config.inc.php config.inc.php.bak
2.编辑 config.inc.php;
/** 定义数据库参数 */
$db = new Typecho_Db('Pdo_Mysql', 'typecho_');
$db->addServer(array (
'host' => 'localhost',
'user' => 'root',
'password' => '******',
'charset' => 'utf8',
'port' => '3306',
'database' => 'typecho',
), Typecho_Db::READ | Typecho_Db::WRITE);
Typecho_Db::set($db);
将 'charset' => 'utf8'
,中的 utf8 改为 utf8mb4;
🤣
重启lnmp及FAQ注意事项
重启 lnmp,新建一篇文章尝试插入emoji看看,😈;
以上。
附注
1.MySQL几种编码格式的区别(utf8、utf8mb4、utf8mb4_general_ci、utf8mb4_unicode_ci、utf8mb4_0900_ai_ci);
2.修改 mysql charset 編碼;
3.修改MySQL的字符集为utf8mb4;
版权属于:毒奶
联系我们:https://limbopro.com/6.html
毒奶搜索:https://limbopro.com/search.html
机场推荐:https://limbopro.com/865.html IEPL专线/100Gb/¥15/月起
毒奶导航:https://limbopro.com/daohang/index.html本文链接:https://limbopro.com/archives/Typecho-emoji.html
本文采用 CC BY-NC-SA 4.0 许可协议,转载或引用本文时请遵守许可协议,注明出处、不得用于商业用途!