2016-11-13 6 views
0

私は、休止状態でmySQLデータベースと会話しているSpring Webアプリケーションを持っています。私はデータベースの文字エンコーディングとしてutf8mb4を設定しようとしています。私は、次の手順を実行した:Openshift mySQL character_set_server utf8mb4

SET NAMES utf8mb4; 
ALTER DATABASE mydb CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci; 
  • 変更を使用して

    1. セットアップ私のデータベースは

      hibernate.connection.url = jdbc:mysql://localhost:myport/mydb?character_set_server=utf8mb4 
      
    2. にURLを休止状態私のSpringアプリケーション構成
    3. 上のデータベース接続の初期SQL文に SET NAMES 'utf8mb4'を追加します
    4. character_set_server=utf8mb4をmy.cnfに追加

    アプリケーションをローカルデータベースで正常に動作させることができました。また、私が見つけたのは、ステップ2は必要ではなく、ステップ4がなければ、私のセットアップはローカルでは動作していないということです。 しかしOpenshiftでは、手順4を実行する方法が見つかりませんでした。この問題の解決方法はありますか?私はcharacter_set_serverをphpMyAdmin変数を使って変更しようとしましたが、これは動作しません。

  • +0

    春を探し、http://mysql.rjweb.org/doc.php/charcoll#other_computer_languagesにリンクの –

    +0

    おかげで休止状態が、私はあなたがどのような症状utf8mb4 – plato

    +0

    に関する私の問題への解決策を見つけるために管理していません持ってる?いくつかの一般的な問題と解決策については、http://stackoverflow.com/questions/38363566/trouble-with-utf8-characters-what-i-see-is-not-what-i-storedを参照してください。 –

    答えて

    0

    utf8mb4を使用するように設定できる別のMySQLカートリッジがあります。データベースからデータをバックアップするだけです。 MySQLのカートリッジを取り外し、この1を追加します。

    https://github.com/amgohan/openshift-origin-cartridge-mysql-utf8mb4

    をそして最後に、あなたの新しいデータベースにバックアップを復元します。

    関連する問題