ほとんどのEmojisが最初に格納されていたので、FacebookやTwitterの投稿をMysqlデータベースに保存しています。私たちはこれから先に行ってデータベースサーバの設定を変更してから、Emojisが保存され、正しく表示されるようになっていますが、Emojisの一部はまだ表示されていますか?悲しいことに、あります。私はそれらの1つがバスケットボールだったことを知っている。MySQLは、UTF8MB4を使用している場合、Emojisをいくつかのテキストフィールドに保存します。
私はMySQLで次のようなコメントを実行します。
SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%'
OR Variable_name LIKE 'collation%';
次の設定があります。
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
collation_connection = utf8_general_ci
collation_database = utf8mb4_unicode_ci
collation_server = utf8mb4_unicode_ci
私たちのデータベースサーバは、Rackspaceでホストされています。
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init-connect='SET NAMES utf8mb4'
多くのクライアント、PHP、Java、MySQL Workbenchを使用してデータベースからの出力をテストしました。
Emojisが保存されていない理由を今私は失っています。私はWeb上で見つけられるように多くのアドバイスを続けてきました。
一部の絵文字は、3バイトのutf8エンコーディングに適合しています。 utf8mb4の4バイトが必要なものもあります。 –