数据库与MySQL的下载使用
数据存储演变史
第一阶段:单独的文本文件
刚开始使用文本文件存储数据,这种方式没有固定的存放位置和固定的数据格式。
第二阶段:软件开发目录规范
这个阶段规定了文件存放位置,解决了文本文件没有固定的存放位置的问题,但是没有固定的数据格式这个问题还是存在。
第三阶段:数据库应用
这个阶段开始使用数据库来存储数据了,用数据库存储数据就解决了数据存放位置和数据格式的问题。

数据库应用发展史
第一阶段:单机游戏阶段
刚开始的数据都是各自保存在各自的计算机上的,无法实现远程共享,就像单机游戏一样,不用互联网,但只能在自己计算机上游玩。

第二阶段:多机游戏阶段
从这里开始数据都统一通过网络保存到某个固定的服务器上,其他计算机就可以通过这个服务器来实现数据共享了。

缺点:如果所有的数据都存放到一台服务器上,那么这个服务器的压力就会很大,并且一旦服务器崩溃,所有的数据都有可能丢失,数据的安全性比较低。
这个时候就有了新的解决方法:增加服务器的数量,任务均匀分担,并且数据同步保存,用于备份的作用,一台服务器崩溃了还有另外一台。

集群:具有相同功能的多个服务器组合到一起。
数据库本质
数据库从微观层面来说,就是运行在计算机上专门处理数据的进程;从宏观层面来说,就是提供给用户一个简单快捷的操作进程(数据处理)的软件;
所以平时在说的数据库一般指的是操作数据库的应用软件,也就是数据库软件,既然是一个软件,那么它的本质上也是一个基于C/S架构。
数据库分类
数据库大致可以分为两类:
- 关系型数据库
- 非关系型数据库
关系型数据库
特征:
- 有固定的表结构(主要特征),比如excel中的表格。
- 表与表之间可以建立关系,比如存储班级的表和存储学生的表之间是有关系的。
常见数据库:MySQL、Oracle、PostgreSQL、MariaDB、sqlite、sql server。
- MySQL:关系型数据库代表,开源免费,使用频率极高。
- Oracle:安全性极高,但是使用和维护收费。
- PostgreSQL:支持二次开发(自己嫁接,拓展功能)。
- MariaDB:与MySQL是用一作者,开发初衷是作为MySQL的替代品。
- sqlite:小型数据库,携带方便但功能较少,主要用于本地测试。
- sql server:老牌数据库软件,目前主流不用。
非关系型数据库
特征:
- 没有固定的表结构,数据存储采用K:V键值对形式(主要特征),比如{'name':'tom'}、{'username':'tom','password':'123'}
- 表与表之间不能建立关系。
常见数据库:Redis、MongoDB、Memcache。
- Redis:目前最火的非关系数据库,类型丰富,功能强大。
- MongoDB:最像关系型数据库的非关系型数据库,主要用于爬虫和大数据。
- Memcache:落寞了,被Redis取代了。
SQL与NoSQL
SQL有时候用来表示关系型数据库,有时候表示SQL语句;NoSQL有时候用来表示非关系型数据库,有时候表示NoSQL语句
SQL语句与NoSQL语句统一了各个编程语言与数据库服务器的沟通标准。
- SQL语句是与关系型数据库交互的语言。
- NoSQL语句是与非关系型数据库交互的语言。
MySQL简介
版本问题
5.6.X:使用最为广泛的稳定版本
5.7.X:目前正在逐步过渡使用的版本
8.0.X:最新版本,暂时不投入正常生产环境中使用(但是很好用)
下载使用
1.进入官网:MySQL
2.点击DOWNLOADS

3.点击MySQL Community (GPL) Downloads

4.点击MySQL Community Server

5.默认给你展示的最新版本MySQL,我们可以选择自己需要的版本

6.选择版本和操作系统后下载

7.下载完后解压到合适位置
8.添加bin文件夹到环境变量中
目录结构
这里以MySQL5.6.51为例。
根目录

bin文件夹
mysqld.exe用于启动服务端。
mysql.exe用于启动客户端。
基本使用
简单使用
游客模式
1.用管理员身份运行cmd
2.使用cd命令到bin路径下(如果添加了环境变量,这一步省略)
3.启动服务端:输入mysqld

4.重新打开一个cmd窗口(不要关闭之前的cmd窗口)
5.启动客户端:输入mysql

如果显示的和我一样的界面,那就说明没有问题了。
管理员模式
在上述步骤的第五步中,把命令换成:
mysql -uroot -p
回车后会提示你输入密码,因为是第一次登录,没有密码,再次按回车即可。
系统服务
上面的简单使用中,服务端窗口需要一直开着,非常麻烦。如果我们不想自己启动服务端,可以设置成开机自启动。
步骤:
1.用管理员身份运行cmd
2.输入:mysqld --install

3.在输入:net start mysql

4.这时服务端就是一直处于运行状态了,无论何时都可以通过cmd窗口进入mysql环境了
手动管理服务
如果你不想开机自启mysql服务,那么就进行如下操作。
1.右键此电脑-->管理-->服务和应用程序-->服务。
2.找到mysql服务,右键-->属性。
3.设置启动类型为手动,应用,确定。
4.设置成功后,以后每次开机都需要自己去启动mysql服务。
补充
停止服务端命令:net stop mysql
移除系统服务:mysqld --remove
修改密码
方式一:通过cmd窗口直接修改
1.打开cmd窗口
2.更改密码命令:
mysqladmin -u用户名 -p原密码 password 新密码
因为刚下载的mysql,所以没有密码,原密码不写即可。
修改管理员密码为'123456'案例:
mysqladmin -uroot -p password 123456
方式二:进入mysql环境后修改
1.打开cmd窗口进入mysql环境
2.更改密码命令:(最新版不支持)
set password=PASSWORD('新密码');
重要概念
库:类似于文件夹
表:类似于文件
记录:类似于文件中的一行行数据
补充
SQL语句使用分号作为结束符。
基本SQL语句
关于库的基本语句
| SQL语句 | 作用 |
|---|---|
| use 库名; | 切换到指定库,操作库中的表时必要操作 |
| show databases; | 查看所有的库名称 |
| show create database 库名; | 指定查看某个库的信息 |
| create database 库名; | 添加库 |
| alter database 库名 charset='字符编码'; | 修改指定库的字符编码 |
| drop database 库名; | 删除库 |
| select database(); | 查看当前在哪个库下,显示NULL说明不在任何库下 |
关于表的基本语句
| SQL语句 | 作用 |
|---|---|
| show tables; | 查看当前库下所有的表名称 |
| show crate table 表名; | 指定查看某个表的信息 |
| create table 表名(字段名称1 字段类型1, 字段名称2 字段类型2,...); | 创建表 |
| alter table 表名 rename 新表名; | 修改表名 |
| drop table 表名; | 删除表 |
| desc 表名; | 查看指定表的字段信息 |
| alter table 表名 add 新字段 字段类型; | 末尾添加字段 |
| alter table 表名 add 新字段 字段类型 after 已有字段; | 已有字段后追加新字段 |
| alter table 表名 add 新字段 字段类型 first; | 头部添加字段 |
| alter table 表名 change 旧字段 新字段 字段类型; | 修改字段名 |
| alter table 表名 drop 已有字段; | 删除字段 |
关于记录的基本语句
| SQL语句 | 作用 |
|---|---|
| 增 | |
| insert into 表名 values(值1,值2,...); | 添加一条记录,值与表中的字段对应 |
| insert into 表名 values(值1,值2,...),(值3,值4); | 添加多条记录 |
| 查 | |
| select * from 表名; | 查看表里面所有的数据 |
| select * from 库名.表名; | 查看指定库下面的指定表里面的所有数据 |
| select 字段1,字段2,... from 表名; | 查看表中指定字段的数据 |
| select * from 表名\G | 查询语句后加\G时,数据会逐行展示 |
| 改 | |
| update 表名 set 字段名=新值 where 筛选条件; | 修改表中符合条件的记录的字段值 |
| 删 | |
| delete from 表名 where 筛选条件; | 删除表中符合条件的数据 |
| delete from 表名; | 删除表中所有数据 |
数据库与MySQL的下载使用的更多相关文章
- 数据库之mysql篇(1)—— 数据库管理系统简介/mysql的安装、配置
说mysql之前,还是先说说数据库. 什么是数据库: 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后 ...
- {MySQL数据库初识}一 数据库概述 二 MySQL介绍 三 MySQL的下载安装、简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 初识sql语句
MySQL数据库初识 MySQL数据库 本节目录 一 数据库概述 二 MySQL介绍 三 MySQL的下载安装.简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 ...
- 数据库、MySQL下载与安装、基本SQL语句
数据演变史 # 1.单独的文本文件 没有固定的存放位置 没有固定的数据格式 '''程序彼此无法兼容 没有统一的标准''' # 2.软件开发目录规范 按照文件功能的不同规定了相应的位置 '''文件查找变 ...
- 数据库 之MySQL 简单教程
So Easy系列之MySQL数据库教程 1. 数据库概述 1.1. 数据库概述 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和 ...
- 【数据库】MySQL的安装与简单使用
首先我们要下载Mysql的安装包,大家可以到http://mysql.com官网中根据自己的电脑系统版本下载 也可以点击 MySQL资源 下载 密码:btuu 建议下载5.7以上的版本,因为省掉了许多 ...
- 08 Linux下MySQL的下载、安装及启动
测试环境 主机系统:Win7 64位 虚拟机:VMware® Workstation 11.1.0 虚拟机系统:CentOS 6.5 64位 Kernel 2.6.32-431.e16.x86_6 ...
- go操作数据库 Go-SQL-Driver/MySQL 使用详解
go操作mysql的驱动包很多,这里讲解当下比较流行的Go-SQL-Driver/MySQL1.下载安装 执行下面两个命令: 下载:go get github.com/Go-SQL-Driver/My ...
- Cobar是提供关系型数据库(MySQL)分布式服务的中间件
简介 Cobar是提供关系型数据库(MySQL)分布式服务的中间件,它可以让传统的数据库得到良好的线性扩展,并看上去还是一个数据库,对应用保持透明. 产品在阿里巴巴稳定运行3年以上. 接管了3000+ ...
- 2、ABPZero系列教程之拼多多卖家工具 更改数据库为Mysql
因为要部署项目到云服务器,不想在服务器上装SqlServer,所以需要把项目改为Mysql. 项目初始化 1.下载项目压缩包,前面文章已经说到,可以加群到群文件里下载.解压缩下载的项目源码,使用VS2 ...
随机推荐
- 阐述在Yii2上实现跳转提示页
序言 为了让用户有更加良好的体验,在操作成功或者失败后,来个提示并跳转页面,我就在Yii2上实现了这一个效果.在写这个跳转提示页的时候,找资料我发现网上关于这方面的中文资料真的很少,大家也都共享下吧! ...
- 深入理解ES6之《ES7》
指数运算符 Math.pow是可以进行求幂运算的求幂运算符是两个星号 let result = 5 ** 2 console.log(result) //25 console.log(result = ...
- PAT B1091 N-自守数
输入样例: 3 92 5 233 输出样例: 3 25392 1 25 No '解题思路:判断的时候将结果转换成字符串,判断后面几位数字和输入数字是否相同,掉进了N是从1到10的坑,而不是1到9 ...
- CTF大赛模拟-CFS三层内网漫游
CTF大赛模拟-CFS三层内网漫游 环境: 三台虚拟机,三个网络. target 1:192.168.161.178 ,192.168.52.132 (linux) target 2:192.168. ...
- PyQt5 基本语法(四)
目录 2. 输入控件(一) 2.1 纯键盘 2.1.1 QLineEdit 2.1.1.1 描述 2.1.1.2 控件创建 2.1.1.3 输出模式 2.1.1.4 提示字符串 2.1.1.5 清空按 ...
- C# 将PDF转为Excel
通常,PDF格式的文档能支持的编辑功能不如office文档多,针对PDF文档里面有表格数据的,如果想要编辑表格里面的数据,可以将该PDF文档转为Excel格式,然后编辑.本文,将以C#代码为例,介绍如 ...
- QGIS 安装
QGIS 安装 官网 https://www.qgis.org/ 下载地址 https://www.qgis.org/en/site/forusers/download.html 参考文档 https ...
- js的split函数
split() 方法用于把一个字符串分割成字符串数组. separator 必需.字符串或正则表达式,从该参数指定的地方分割 stringObject. ***如果把空字符串 ("" ...
- 不仅仅是一把瑞士军刀 —— Apifox的野望和不足
声明:本文内容不涉及任何 Apifox 的功能介绍,一来网上这方面的文章已经汗牛充栋,二来 Apifox 本身的用户体验做的非常好,对于开发者而言学习成本基本为零. 阮一峰:不管你是前端开发还是后端开 ...
- 简单的js提示框,仅仅用jq和css就可以
首先定义一个盒子 1 .pop { 2 position: fixed; 3 top: 20%; 4 left: 50%; 5 transform: translate(-50%); 6 width: ...