MySQL之修改默认引擎和字符集

一、数据库引擎

1.1 查看数据库引擎

mysql> show engines;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
9 rows in set (0.00 sec)

可以看到默认引擎是 InnoDB

1.2 修改默认数据库引擎

1.打开配置文件

[root@VM_0_15_centos ~]# vim /etc/my.cnf

2.在最下面编辑如下内容:

default-storage-engine=InnoDB

3.重启服务

[root@VM_0_15_centos ~]# systemctl restart mysqld

二、数据库字符集

2.1 查看字符集

查看MYSQL数据库服务器和数据库字符集

mysql> show variables like '%character%';
+--------------------------+----------------------------+
| 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                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)
字符集 作用
character_set_client 用来设置客户端使用的字符集。
character_set_connection 用来设置连接数据库时的字符集
character_set_database 用来设置默认创建数据库的编码格式
character_set_filesystem 文件系统的编码格式,把操作系统上的文件名转化成此字符集,默认binary是不做任何转换的
character_set_results 查询结果字符集
character_set_server 服务器安装时指定的默认编码格式
character_set_system 系统元数据(字段名等)字符集
character_sets_dir 字符集安装的目录

查看 MYSQL 所支持的字符集

show charset;

查看库的字符集

show database status from 库名 like  表名;

查看表的字符集

show table status from 库名 like  表名;

查看表中所有列的字符集

show full columns from 表名;

2.2 修改字符集

1.打开配置文件

[root@VM_0_15_centos ~]# vim /etc/my.cnf

2.在最下面编辑如下内容:

character-set-server=utf8
[client]
default-character-set=utf8

3.重启服务并验证

[root@VM_0_15_centos ~]# systemctl restart mysqld
[root@VM_0_15_centos ~]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.27 MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show variables like '%character%';
+--------------------------+----------------------------+
| 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       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

猜你喜欢

转载自www.cnblogs.com/markLogZhu/p/11397931.html