MariaDB修改编码格式

  1. 通过set修改value字段
  2. 登录MySQL,使用 show variables like 'character%';
  3. 查看当前编码格式
  4. 使用 set character_set_client = 'utf8mb4';
  5. 直接修改variable_name的value
  1. Mariadb通过配置文件修改编码
  2. 1、登录MySQL,使用

    SHOW VARIABLES LIKE 'character%';

    查看当前使用的字符集,应该有好几个不是UTF-8格式。

    2、要修改的配置文件位于 /etc/my.cnf.d目录下:

    client.cnf

    在[client]字段里加入

    default-character-set=utf8

    server.cnf

    在[mysqld]字段里加入

    character-set-server=utf8

    systemctl restart mariadb 配置生效,修改后的效果如下:

    MariaDB设置数据库默认编码

  3. 修改字段编码格式:

  4. 先查看下编码:

    MariaDB [(none)]>  SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
    +--------------------------+-------------------+
    | Variable_name            | Value             |
    +--------------------------+-------------------+
    | character_set_client     | utf8              |
    | character_set_connection | utf8              |
    | character_set_database   | latin1            |
    | character_set_filesystem | binary            |
    | character_set_results    | utf8              |
    | character_set_server     | latin1            |
    | character_set_system     | utf8              |
    | collation_connection     | utf8_general_ci   |
    | collation_database       | latin1_swedish_ci |
    | collation_server         | latin1_swedish_ci |
    +--------------------------+-------------------+
    10 rows in set (0.00 sec)
    

    修改/etc/my.cnf.d/server.cnf
    [mysqld]

    [mysqld]
    character_set_server=utf8mb4
    collation-server=utf8mb4_unicode_ci
    init_connect='SET NAMES utf8mb4'
    skip-character-set-client-handshake=true
    

    重启DB:

    systemctl restart mariadb

    再次查看编码:

    MariaDB [(none)]> SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
    +--------------------------+--------------------+
    | Variable_name            | Value              |
    +--------------------------+--------------------+
    | character_set_client     | utf8mb4            |
    | character_set_connection | utf8mb4            |
    | character_set_database   | utf8mb4            |
    | character_set_filesystem | binary             |
    | character_set_results    | utf8mb4            |
    | character_set_server     | utf8mb4            |
    | character_set_system     | utf8               |
    | collation_connection     | utf8mb4_unicode_ci |
    | collation_database       | utf8mb4_unicode_ci |
    | collation_server         | utf8mb4_unicode_ci |
    +--------------------------+--------------------+
    10 rows in set (0.00 sec)
    

    修改DB的默认编码:

    ALTER DATABASE XX_db CHARACTER SET utf8mb4;

    1.查看数据库编码格式

    1

    mysql> show variables like 'character_set_database';

     2.查看数据表的编码格式

    1

    mysql> show create table <表名>;

     3.创建数据库时指定数据库的字符集

    mysql>create database <数据库名> character set utf8;

    4.创建数据表时指定数据表的编码格式

    create table tb_books (
        name varchar(45) not null,
        price double not null,
        bookCount int not null,
        author varchar(45) not null ) default charset = utf8;

    5.修改数据库的编码格式

    mysql>alter database <数据库名> character set utf8;

    6.修改DB的默认编码:

    ALTER DATABASE XX_db CHARACTER SET utf8mb4;

    7.修改表中字段编码

    ALTER TABLE 表名 MODIFY `字段` TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

     8.添加外键

    mysql>alter table tb_product add constraint fk_1 foreign key(factoryid) references tb_factory(factoryid);
    mysql>alter table <表名> add constraint <外键名> foreign key<字段名> REFERENCES <外表表名><字段名>;

    9.删除外键

    mysql>alter table tb_people drop foreign key fk_1;
    mysql>alter table <表名> drop foreign key <外键名>;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章