MySQL介绍

每日分享:

外向是生活所需,孤独是自我享受。

目录

一、MySQL数据库

1. MySQL数据库的介绍

2. MySQL数据库的安装

二、数据类型和约束

1. 数据类型

2. 数据约束

3. 数据类型附录表

1. 整数类型

2. 字符串

3. 时间类型


一、MySQL数据库

1. MySQL数据库的介绍

MySQL是一个关系型数据库管理系统,是最流行的关系型数据库管理系统中的一个

MySQL的特点:

  1. MySQL是开源的,不需要支付额外的费用
  2. MySQL支持大型的数据库,可以处理拥有上千万条记录的大型数据库
  3. MySQL使用标准的SQL数据语言形式
  4. MySQL可以安装在不同的操作系统,并且提供多种编程语言的操作接口,c、c++、python、Java、Ruby等等

2. MySQL数据库的安装

  • MySQL数据库服务端软件的安装
  • MySQL数据库客户端软件的安装

在下载之前一般需要使用命令:sudo apt-get update (来更新镜像源,以保证可以下载到最新版)

MySQL数据库服务端软件的安装:

ubuntu中打开终端,输入以下命令:

sudo apt-get install mysql-server

MySQL介绍_第1张图片

它还会弹出页面让你设置mysql的密码,输入密码按回车即可

如何显示MySQL服务端安装包信息(成功显示证明安装成功):

apt-cache show mysql-server

MySQL介绍_第2张图片

查看MySQL服务:

ps -aux | grep mysql

说明:

  • ps 查看当前系统中的进程
  • -a 表示所有用户
  • -u 表示显示用户名
  • -x 表示显示所有执行程序

查看MySQL服务状态:

sudo service mysql status

MySQL介绍_第3张图片

running表示运行状态,最后一行按q退出

停止MySQL服务:

sudo service mysql stop

MySQL介绍_第4张图片

启动MySQL服务:

sudo service mysql start

MySQL介绍_第5张图片

重启MySQL服务:

sudo service mysql restart

MySQL介绍_第6张图片

MySQL配置文件的介绍:

配置文件的路径为:/etc/mysql/mysql.conf.d/mysqld.cnf

查看MySQL配置文件:

主要配置信息说明:

port 表示端口号,默认为3306

bind-address 表示服务器绑定的ip,默认为127.0.0.1(本机)

datadir 表示数据库保存路径,默认为/var/lib/mysql

log_error 表示错误日志,默认为/var/log/mysql/error.log

MySQL数据库客户端软件的安装:

客户端通过socket方式与服务端程序通信

常用的MySQL数据库客户端软件:

  1. 图形化界面客户端Navicat
  2. 命令行客户端mysql

Navicat的使用说明:

到官网下载https://www.navicat.com.cn/download/navicat-for-mysql

在这里我下的是第一个:

MySQL介绍_第7张图片

之后先切换到文件下载的路径,之后执行命令:

chmod +x navicat16-mysql-cs.AppImage

./navicat16-mysql-cs.AppImage

之后会提示注册,点试用即可:

MySQL介绍_第8张图片

启动之后是这样的:

MySQL介绍_第9张图片

如何连接服务端:

MySQL介绍_第10张图片

这是连接之后的界面: 

MySQL介绍_第11张图片

命令行客户端mysql的安装:

在ubuntu中打开终端,输入命令:

sudo apt-get install mysql-client

MySQL介绍_第12张图片

显示MySQL客户端信息:

MySQL介绍_第13张图片

MySQL命令的使用帮助:

mysql --help

MySQL介绍_第14张图片

MySQL客户端的使用:

MySQL客户端连接MySQL服务端命令

mysql -uroot -p

MySQL介绍_第15张图片

说明:

  •  -u:表示MySQL服务端的用户名
  • -p:表示MySQL服务端的密码
  • quit或者exit或者Ctrl+d表示退出

二、数据类型和约束

数据库中的数据保存在数据表中,在表中为了更加准确的存储数据,保证数据的正确有效,可以在创建表的时候,为表添加一些强制性的验证,比如:数据类型和约束

1. 数据类型

数据类型是指在创建表的时候为表中字段指定数据类型,只有数据符合类型要求才能存储起来,使用数据类型的原则是:够用就行,尽量使用取值范围小的,而不用大的,这样可以更多的节省存储空间

常用数据类型如下:

  • 整数:int,bit
  • 小数:decimal
  • 字符串:varchar,char
  • 日期时间:date,time,datetime
  • 枚举类型:enum

数据类型说明:

  • decimal表示浮点数,如decimal(5, 2)表示共存5位数,小数占2位
  • char表示固定长度的字符串,如char(3),如果填充‘ab’时,会补一个空格‘ab ’,3表示字符数
  • varchar表示可变长度的字符串,如varchar(3),填充‘ab’时就会存储‘ab’,3表示字符数
  • 对于图片、音频、视频等文件,不存储在数据库中,而是上传到某个服务器上,然后再表中存储这个文件的保存路径
  • 字符串text表示存储大文本,当字符大于4000时推荐使用

2. 数据约束

约束是指数据在数据类型限定的基础上额外增加的要求

常见的约束:

  • 主键 primary key:物理上存储的顺序,MySQL建议所有表的主键字段都叫id,类型为int unsigned
  • 非空 not null:此字段不允许填写空值
  • 唯一 unique:此字段的值不允许重复
  • 默认 default:当不填写字段对应的值会使用默认值,填写时以填写为准
  • 外键 foreign key:对关系字段进行约束,当为关系字段填写值时,会到关联的表中查询此值是否存在,如果存在则填写成功,如果不存在则填写失败并抛出异常

3. 数据类型附录表

1. 整数类型

类型 字节大小 有符号范围(Signed) 无符号范围(Unsigned)
TINYINT 1 -128 ~ 127 0 ~ 255
SMALLINT 2 -32768 ~ 32767 0 ~ 65535
MEDIUMINT 3 -8388608 ~ 8388607 0 ~ 16777215
INT/INTEGER 4 -2147483648 ~ 2147483647 0 ~ 4294967295
BIGINT 8 -9223372036854775808 ~ 9223372036854775807 0 ~ 18446744073709551615

2. 字符串

类型 说明 使用场景
CHAR 固定长度,小型数据 身份证号、手机号、电话、密码
VARCHAR 可变长度,小型数据 姓名、地址、品牌、型号
TEXT 可变长度,字符个数大于4000 存储小型文章或者新闻
LONGTEXT 可变长度,极大型文本数据 存储极大型文本数据

3. 时间类型

类型 字节大小 示例
DATE 4 ‘2022-01-01’
TIME 3 ‘12:29:58’
DATATIME 8 ‘2022-01-01 12:29:58’
YEAR 1 ‘2018’
TIMESTAMP 4 '1970-01-01 00:00:01' UTC ~ '2038-01-01 00:00:01' UTC

你可能感兴趣的:(数据库,mysql,数据库,database)