MylSAM:查询速度快,有较好的索引优化和数据压缩技术,但是它不支持事务
InnoDB:它支持事务,并且提供行级的锁定,应用也相当广泛
docker ps -a --filter "ancestor=mysql"
查看linux中创建了多少个docker容器下的mysql(只查看当前运行的去掉-a)
docker start <容器名称或容器ID>
启动容器下的mysql
docker run -d --name <容器名称> --restart always -e MYSQL_ROOT_PASSWORD=<密码> mysql
设置容器下的mysql自启动--restart always
docker exec -it my_mysql_container mysql -u root -p
使用该命令进入容器下的mysql
systemctl start docker
启动docker服务
多行注释:/* */
单行注释:--
mysql注释:#
wildcard:
%:任意多个任意字符
_:单个任意字符
#如何查看当前使用的数据库
Select database();
#使用数据库
Use db_name;
Collation:校对规则:排序的规则
#字符集的名字
#国家/general通用
Ci:忽略大小写 a,A
Cs:不忽略大小写 a,A
bin:按二进制编码进行排序
utf8mb4_general_ci
在创建数据库的时候,就可以指定数据库的字符集和校对规则
表操作:
创建表(指定有哪些列以及它的类型)
在表这个级别设置存储引擎,默认的存储引擎:innoDB
也可以指定字符集:默认使用数据库的字符集
chat做笔记(utf-8):
mysql修改字符为utf-8
ChatGPT
要将MySQL中的字符集修改为UTF-8,您需要考虑两个方面:连接字符集和数据库/表字符集。
连接字符集: 这会影响到会话中的字符集。您可以使用以下命令来修改连接字符集为UTF-8:
sql
SET NAMES utf8;
或者,使用以下命令也可以实现相同的效果:
sql
SET CHARACTER SET utf8;
数据库/表字符集: 如果您想要更改数据库或表的字符集,您需要运行相应的ALTER语句。例如,如果您要将数据库的字符集更改为UTF-8:
sql
ALTER DATABASE 数据库名 CHARACTER SET utf8;
如果要将表的字符集更改为UTF-8:
sql
ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8;
请注意,更改数据库或表的字符集可能需要一些时间,特别是如果表中有大量的数据。在执行这些更改之前,请务必备份重要的数据以防万一。此外,请确保您的MySQL服务器支持UTF-8字符集。在创建数据库服务器或安装MySQL时,您可以选择字符集设置。如果服务器不支持UTF-8,您可能需要考虑更新MySQL的配置或重新安装服务器。最后,请根据您的实际情况谨慎操作,因为更改字符集可能会影响数据存储和应用程序的功能。
Mysql数据类型:
在Mysql中,有三种主要的类型:文本、数字和日期/时间类型
char和varchar都是字符串:255,varchar>255-->text
char(数量):char(100)--> str
Name char(100) -->zhangsan-->name长度100
Varchar(100)--->zhangsan---> name:8
Text:文本(大容量的字符串)
Tinytext:255
Text:存放最大长度为65535个字符的字符串
Mediumtext:存放最大长度为16777215个字符的字符串
longtext:存放最大长度为4294967295个字符的字符串
BLOB:二进制文本,单位是字节
Blob:65535
mediumBlob:16777215
Longblob:4294967295
ENUM:枚举
ENUM:{"item1","item2","item3"}
SET(item1,item2,item3):集合
无序不重复:item1,item1-item2,item1-item2-item3
数字类型:
Int
Tinyint(size):-128-127->2^8->-128-127是因为有一个符号2^7 = 128-> 1byte
Smallint(size):2^16-1==>65535 无符号,有符号-2^15 -2^15-1
Mediumint(size):2^24=>
Int(size):2^32
Bigint(size):2^64
Double:双精度的浮点数
Float:浮点数 小数
declimal:字符串存储的double类型
格式:(size,d) size:总长度
d:小数点后面位数
日期类型:
Unix世纪元年:1970.1.1 00:00:00
整数值或者小数值
一天为单位的:即现在距1970年1月1日多少天
秒:距离1970年1月1日多少秒
毫秒:距离1970年1月1日多少毫秒
date类型:
YYYY-MM-DD
DATEIME()
YYYY-MM-DD HH:MM:SS
TIMESTAMP():时间戳
TIMESTAMP值用Unix纪元('1970-01-01 00:00:00 UTC')至今的描述来存储
YYYY-MM-DD HH:MM:SS 2038
TIME():时间
约束条件:
NOT NULL:非空
UNIQUE:唯一键
PRIMARY:主键
FOREIGN KEY:外键文章来源:https://www.toymoban.com/news/detail-632091.html
CHECK:检查文章来源地址https://www.toymoban.com/news/detail-632091.html
到了这里,关于Mysql随心记--第一篇的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!