0
点赞
收藏
分享

微信扫一扫

1 创建数据库 -- MySQL数据库

连接 MySQL 服务器

a.启动MySQL服务器

# 启动mysql	-- 感觉有点麻烦

cd /usr/local/mysql-8.0.31-linux-glibc2.12-x86_64/support-files 

sudo ./mysql.server start

1.png

b.改进MySQL服务器的启动

# mysql.server 软连接		-- 已经有了,没注意

$ sudo ln -s /usr/local/mysql/support-files/mysql.server /usr/local/bin/mysqld

$ sudo mysqld start

2.png

c.使用MySQL的客户端连接数据库

# 终端登录mysql

$ mysql -uroot -p
	-- 然后输入密码

3.png

创建简单数据库

mysql> creare database dbname;

# 建议使用这种写法,因为数据库已经存在的话,就是报错
mysql> CREATE DATABASE IF NOT EXISTS database_name;

# 写法复杂点
CREATE DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;

4.png

查看数据库

a.查看所有数据库

mysql> show databases;

5.png

b.查看数据库创建信息

mysql> show create database dbname;

6.png

c.理解CHARACTER与COLLATE

CHARACTER

在MySQL中,我们可以使用CHARACTER SET关键字来指定字符集,用于创建表时定义表列的默认字符集。字符集是一组字符的编码规则,用于存储和处理文本数据。MySQL支持多种字符集,包括常见的utf8、gbk等。

COLLATE

简而言之,COLLATE会影响到ORDER BY语句的顺序,会影响到WHERE条件中大于小于号筛选出来的结果,会影响**DISTINCT**、**GROUP BY**、**HAVING**语句的查询结果。

utf8mb4_0900_ai_ci是什么

utf8mb4_0900_ai_ci是mysql8.0之后的数据库的一种排序规则(collation)。

utf8mb4,这个名字许多人大概熟悉。如今️✈️♥️emoji表情已经大量使用,但MySQL之前的的字符集(character set)是utf8(更准确的名字是utf8mb3,一个字符最多使用3个字节来存储),只能存储编码值从0x000000到0xFFFFFF之间的字符。然而,emoji表情字符的码值超过了0xFFFFFF,按照UTF-8规范,存储时需要用4个字节。正因为如此,MySQL才提供了utf8mb4的字符集。如果把数据库表的字符集设定为utf8mb4,就可以正常存储包含表情字符的文本了。

中间的0900,它对应的是Unicode 9.0的规范。要知道,Unicode规范是在不断更新的,每次更新既包括扩充,也包括修正。比如6.0版新加入了222个中日韩统一表义字符(CJK Unified Ideographs),7.0版加入了俄国货币卢布的符号等等。

最后两部分_ai_ci,ai表示accent insensitivity,也就是“不区分音调”,而ci表示case insensitivity,也就是“不区分大小写”。
举报

相关推荐

0 条评论