一、引言
1.1 现有的数据存储方式有哪些?
- Java程序存储数据(变量、对象、数组、集合),数据保存在内存中,属于瞬时状态存储。
- 文件(File)存储数据,保存在硬盘上,属于持久状态存储。
1.2 以上存储方式存在哪些缺点?
- 没有数据类型的区分。
- 存储数据量级较小。
- 没有访问安全限制。
- 没有备份、恢复机制。
- 没有快速查找特定文件内容的手段。
1.3 没有使用数据库,你将会变成这样
1.4 使用数据库,你会变成这样
二、数据库
2.1 概念
数据库是“按照数据结构来组织、[存储和管理数据的仓库]()。是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。
2.2 数据库的分类
- 网状结构数据库:美国通用电气公司IDS(Integrated Data Store),以节点形式存储和访问。
- 层次结构数据库:IBM公司IMS(Information Management System)定向有序的树状结构实现存储和访问。
- 关系结构数据库:Oracle、DB2、MySQL、SQL Server,以表格(Table)存储,多表间建立关联关系,通过分类、合并、连接、选取等运算实现访问。
- 非关系型数据库:ElastecSearch、MongoDB、Redis,多数使用哈希表,表中以键值(key-value)的方式实现特定的键和一个指针指向的特定数据。
三、数据库管理系统
3.1 概念
[数据库管理系统]()(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中的数据。
3.2 常见数据库管理系统
- Oracle:被认为是业界目前比较成功的关系型数据库管理系统。Oracle数据库可以运行在UNIX、Windows等主流操作系统平台,完全支持所有的工业标准,并获得*别的ISO标准安全性认证。
- DB2:IBM公司的产品,DB2数据库系统采用多进程多线索体系结构,其功能足以满足大中公司的需要,并可灵活地服务于中小型电子商务解决方案。
- SQL Server:Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点。 SQL Server + C#
- SQLLite:应用在手机端的数据库。
3.3 数据库的排名
四、MySQL
4.1 简介
MySQL是一个[关系型数据库管理系统](),由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS(Relational Database Management System,关系数据库管理系统) 应用软件之一。mysql5开源 , mysql8社区版。
1. MySQL Community Server 社区版本,开源免费,但不提供官方技术支持。 2. MySQL Enterprise Edition 企业版本,需付费,可以试用30天。 3. MySQL Cluster 集群版,开源免费。可将几个MySQL Server封装成一个Server。 4. MySQL Cluster CGE 高级集群版,需付费。
4.2 访问与下载
版本选择 |
下载页面 |
4.3 安装
运行mysql-installer-community-5.7.28.0.msi,进入安装步骤
同意协议,点击下一步 |
选择安装类型,点击下一步 |
注意:安装需要依赖环境,如需安装的功能缺少对应环境,需先安装环境 |
下一步的时候会提示缺少环境,此处的提示是说你期望安装的产品中缺少依赖,不一定提示的是数据库服务器安装的依赖,可能是其他功能组件的依赖缺少 |
此处发现没有 mysql server, 说明它对应的依赖缺少,可以先执行安装这些可以安装的,之后安装完依赖后再重新安装其他模块,我们此处的操作是先安装依赖,然后后退再次安装 |
下载安装前面提示的 mysql server 需要的 vc2013后,vc2013 如果在64位系统上面建议32和64的程序都安装,然后在上图的地方后退,重新 next 就可以看到可以安装 mysql server 了 |
检查是否存在失败项 |
进行第一步配置,除了需要设置密码外,后面的步骤基本上都是下一步 |
类型与网络配置 |
设置 root 密码 |
创建SQL服务与窗口 |
插件 |
应用配置 |
finish 后回到当前页面继续配置 |
连接服务器(先 check检查, 后下一步) |
执行完此步骤 下一步 finish 配置完成 |
4.4 卸载
- 控制台卸载。
- 找到mysql的安装目录进行删除。
- programdata 删除mysql
4.5 配置环境变量
- Windows
- 创建MYSQL_HOME:C:\Program Files\MySQL\MySQL Server 5.7
- 追加PATH:%MYSQL_HOME%\bin;
- MacOS / Linux
- 终端中输入cd ~ 进入目录,并检查.bash_profile是否存在,有则追加,无则创建
- 创建文件 touch .bash_profile
- 打开文件 open .bash_profile
- 输入export PATH=${PATH}:/usr/local/mysql/bin 保存并退出终端
4.6 MySQL目录结构
核心文件介绍
文件夹名称 | 内容 |
bin | 命令文件 |
lib | 库文件 |
include | 头文件 |
Share | 字符集、语言等信息 |
4.7 MySQL配置文件
在MySQL安装目录中找到my.ini文件,并打开my.ini文件查看几个常用配置参数
参数 | 描述 |
default-character-set | 客户端默认字符集 |
character-set-server | 服务器端默认字符集 |
port | 客户端和服务器端的端口号 |
default-storage-engine | MySQL默认存储引擎 INNODB |
五、SQL语言
5.1 概念
SQL(Structured Query Language)结构化查询语言,用于存取数据、更新、查询和管理关系数据库系统的程序设计语言。 • 1
5.2 MySQL应用
对于数据库的操作,需要在进入MySQL环境下进行指令输入,并在一句指令的末尾使用 ; 结束
5.3 基本命令
查看MySQL中所有数据库
mysql> SHOW DATABASES; #显示当前MySQL中包含的所有数据库 • 1
数据库名称 | 描述 |
information_schema | 信息数据库,其中保存着关于所有数据库的信息(元数据)。 元数据是关于数据的数据,如数据库名或表名,列的数据类型,或访问权限等。 |
mysql | 核心数据库,主要负责存储数据库的用户、权限设置、关键字等, 以及需要使用的控制和管理信息,不可以删除。 |
performance_schema | 性能优化的数据库,MySQL 5.5版本中新增的一个性能优化的引擎。 |
sys | 系统数据库,MySQL5.7版本中新增的可以快速的了解元数据信息的系统库 便于发现数据库的多样信息,解决性能瓶颈问题。 |
创建自定义数据库
mysql> CREATE DATABASE mydb1; #创建mydb数据库 mysql> CREATE DATABASE mydb2 CHARACTER SET gbk; #创建数据库并设置编码格式为gbk mysql> CREATE DATABASE IF NOT EXISTS mydb4; #如果mydb4数据库不存在,则创建;如果存在,则不创建。 • 1 • 2 • 3
查看数据库创建信息
mysql> SHOW CREATE DATABASE mydb2; #查看创建数据库时的基本信息 • 1
修改数据库
mysql> ALTER DATABASE mydb2 CHARACTER SET gbk; #查看创建数据库时的基本信息 • 1
删除数据库
mysql> DROP DATABASE mydb1; #删除数据库mydb1 • 1
查看当前所使用的数据库
mysql> select database(); #查看当前使用的数据库 • 1
使用数据库
mysql> USE mydb1; #使用mydb1数据库 • 1
六、客户端工具
6.1 Navicate
Navicat是一套快速、可靠并价格相宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设。它的设计符合数据库管理员、开发人员及中小企业的需要。Navicat 是以直觉化的图形用户界面而建的,让你可以以安全并且简单的方式创建、组织、访问并共用信息。
6.2 SQLyog
MySQL可能是世界上最流行的开源数据库引擎,但是使用基于文本的工具和配置文件可能很难进行管理。SQLyog提供了完整的图形界面,即使初学者也可以轻松使用MySQL的强大功能。其拥有广泛的预定义工具和查询、友好的视觉界面、类似 Excel 的查询结果编辑界面等优点。
6.3 使用客户端工具
1:创建一个数据库;选择编码为utf-8
2: 创建数据表
3: 往数据表里面存储数据
限于篇幅,下篇继续哦!