zoukankan      html  css  js  c++  java
  • Configure Amazon RDS mysql to store Chinese Characters

    Configure Amazon RDS mysql to store Chinese Characters

    https://dev.mysql.com/doc/refman/5.7/en/charset-applications.html

    http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-charactersetname

    http://stackoverflow.com/questions/16953232/configure-amazon-rds-mysql-to-store-chinese-characters

    How to configure the Amazon RDS to store Chinese Characters in the right way? Currently the text all becomes '????'.

    I already created new parameter group and set character set as utf8 and modify the instance. Below are the detail info:

    mysql> show variables like '%char%';
    +--------------------------+-------------------------------------------+
    | Variable_name            | Value                                     |
    +--------------------------+-------------------------------------------+
    | character_set_client     | utf8                                      |
    | character_set_connection | utf8                                      |
    | character_set_database   | utf8                                      |
    | character_set_filesystem | binary                                    |
    | character_set_results    | utf8                                      |
    | character_set_server     | utf8                                      |
    | character_set_system     | utf8                                      |
    | character_sets_dir       | /rdsdbbin/mysql-5.5.27.R1/share/charsets/ |
    +--------------------------+-------------------------------------------+
    
    
    +----------------------+-----------------+
    | Variable_name        | Value           |
    +----------------------+-----------------+
    | collation_connection | utf8_general_ci |
    | collation_database   | utf8_general_ci |
    | collation_server     | utf8_unicode_ci |
    +----------------------+-----------------+
    shareimprove this question
     

    3 Answers

    After following @Peter Venderberghe's answer to configure RDS, I still can not let it store Chinese characters correctly.

    Finally, I used mysql command line to connect to RDS (you can use mysql workbench or other client tool you like)

    mysql -u USERNAME -pPASSWORD -h HOSTNAMEORIP DATABASENAME

    note:

    1). remember to add your current ip to security group inbound of RDS before connecting to RDS

    2). you can get related information(security groups, USERNAME...etc) on RDS console besides PASSWORDPASSWORD should be the one you created for the instance. HOSTNAMEORIP is "Endpoint"(without the port) on the console.

    3). there is no space between -p and PASSWORD. it's exactly -pPASSWORD.

    After connecting to mysql with the tool you are comfortable with, you need to give it some commands:

    # set character set and collation for database
    mysql> alter database DATABASENAME CHARACTER SET utf8 COLLATE utf8_unicode_ci;
    --------
    # set character set and collation for new records in a table
    mysql> ALTER TABLE TABLENAME CHARACTER SET utf8 COLLATE utf8_unicode_ci;
    # set character set and collation for existing records in a table
    mysql> ALTER TABLE TABLENAME CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

    you may want to write a script to do this task if you have many tables. However, it's not in the scope of this answer.

    After configuring as above, you should be able to rock with Chinese characters!

  • 相关阅读:
    软件工程实验二
    软件工程实验一
    软件工程作业--ATM自助银行服务系统
    软件工程作业—举例分析流程图与活动图的区别与联系
    第一个随笔
    机器学习 实验四 决策树算法及应用
    机器学习实验三 朴素贝叶斯算法及应用
    机器学习 实验二 K-近邻算法及应用
    飞机订票系统(文档)
    机器学习 实验一 感知器及其应用
  • 原文地址:https://www.cnblogs.com/kungfupanda/p/5911486.html
Copyright © 2011-2022 走看看