MySQL
1.介绍
1.1概念
- MySQL是一个关系型数据库管理系统,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件,它是由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品,MySQL 是最流行的关系型数据库管理系统中的一个。
1.2特点
- MySQL是开源的,所以你不需要支付额外的费用。
- MySQL支持大型的数据库。可以处理拥有上千万条记录的大型数据库。
- MySQL使用标准的SQL数据语言形式。
- MySQL可以安装在不同的操作系统,并且提供多种编程语言的操作接口。这些编程语言包括C、C++、Python、Java、Ruby等等。
1.3安装
- 安装MySQL服务端软件使用: sudo apt-get install mysql-server
- 安装MySQL客户端软件使用: sudo apt-get install mysql-client
- 图形化MySQL客户端软件使用Navicat
1.4命令
- 显示MySQL服务端安装包信息
- apt-cache show mysql-server
- 查看MySQL服务
- pa -aux | grep mysql
- ps 查看当前系统中的进程
- -a 表示所有用户
- -u 表示显示用户名
- -x 表示显示所有的执行程序
- 查看MySQL服务状态:
- sudo service mysql status
- 停止MySQL服务:
- sudo service mysql stop
- 启动MySQL服务:
- sudo service mysql start
- 重启MySQL服务:
- sudo service mysql restart
- mysql命令的使用帮助:
- mysql --help
- MySQL客户端连接MySQL服务端命令
- mysql -uroot -p
- -u: 表示MySQL服务端的用户名
- -p: 表示MySQL服务端的密码
- quit 或者 exit 或者 ctr + d 表示退出
2.数据类型和约束
2.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.2数据约束
- 概念
- 约束是指数据在数据类型限定的基础上额外增加的要求.
- 常见的约束如下:
- 主键 primary key: 物理上存储的顺序. MySQL 建议所有表的主键字段都叫 id, 类型为 int unsigned.
- 非空 not null: 此字段不允许填写空值.
- 惟一 unique: 此字段的值不允许重复.
- 默认 default: 当不填写字段对应的值会使用默认值,如果填写时以填写为准.
- 外键 foreign key: 对关系字段进行约束, 当为关系字段填写值时, 会到关联的表中查询此值是否存在, 如果存在则填写成功, 如果不存在则填写失败并抛出异常.
XMind: ZEN - Trial Version