数据库简介与MySQL简介
MySQL简介
数据存取演变史
起源······文本文件
- 在最开始使用计算机都没有相应的规范我们的数据一般都是自己起一个名字然后就根据这个路径存储数据并且存储数据的格式也都五花八门就产生了很多奇奇怪怪的方式
- 文件路径C:xxx.txt,D:xxx.txt, E:xxx.txt, F:xxx.txt等
- 数据存储格式:joseph|321, Alice¥520等
发展······软件开发目录规范
- 我们渐渐的创造出一些默认的软件开发目录规范,让存储数据不再变得那么难以查找,并且一看某些文件夹就知道内部文件大概是什么,但是针对数据的存储格式还是没有完全统一
- 规定了文件存储大概位置:db文件夹内
- 数据存储格式:json格式和picket格式等存储格式还是繁多
现阶段·····数据库服务
- 针对上方的情况我们也搞出了解决方法既然大家存储格式都不太一样那么我就发明一种足够吸引你使用的存储格式和地方,然后大家就一起使用统一的存储格式那么就方便互相之间的交互
- 统一了存取位置和数据与格式
数据库软件应用史
- 单机模式
- 在不同计算机上的相同程序,数据无法共享因为数据库的存储服务全是在本机上完成也就是本地存储,无法分享,满足个人需求
- 联机交互模式
- 不同计算机上的相同程序,数据可以共享,数据库并不存储在本地而是存储在网络架构上方的远程数据库上,我们只需要联网就可以去那个地方拿取到我们自己的数据
- 远程数据库
- 数据库服务是构建一个数据库集群,但是为了我们的数据的安全性和服务器的负载效率我们一般让数据存储分备份存储在不同地方以防出现数据丢失或者物理丢失的情况,所以就有了一句话,贵州山脉服务器集群,水冷设备降温除虫。远离病虫害。(自己瞎编的)

数据库的本质
- 数据库的表达角度
- 站在底层原理的角度来说数据库是指专用于操作数据的进程,就是指运行在内存中的代码
- 而站在显示应用的角度来说,数据库其实本质上就是一种拥有操作界面的应用程序
- 数据库的本质
- 其实数据库本质上来说就是一款应用程序,理论上我们是个程序员都可以自己编写数据库应用程序,他其实也是一款CS架构的应用程序。
数据库的分类
关系型数据库
- 数据的组织方式有明确的表结构,甚至我们可以将他直接看成是存储在表格中
id name password 1 joseph 123 2 jason 520 - 表与表之间可以建立数据库层面的关系,只需要获取到用户表中的一条数据那么我们就可以获取到与之相关的其他表的数据
SQL 形态 介绍 MySQL 开源 使用最为广泛,数据库学习必学,现在安全程度也变得越来越高 PsotgreSQL 开源 支持二次开发 MariaDB 开源 与MySQL是同一个作者,用法也极其相似,名称是以自己女儿名字命名 Oracle 收费 安全性极高,各大银行和重要机关使用 sqlite 小型数据库 主要是用于本地测试在django中自带的一个数据库 db2 开源 转为中型和大型商业机构设计开发 sql server 开源 使用集成的商业智能(BI)工具提供了企业级的数据管理 非关系型数据库
数据结构没有明确的表的形式去表述,一般是以字典的K:V键值对的形式去组织存储
{'name':'jsoeph'}{'username':'Alice','password':'520'}
数据之间无法直接建立数据库层面的关系
SQL 形态 介绍 redis 目前来说最火的非关系数据库 使用频率最好的缓存型数据库 mongoDB 稳定型数据库 最像是关系型数据库的非关系数据库,有Java那味了 memcache GG GG
MySQL简介
- 前言
- 虽然说数据库类型也是繁多复杂的但是就底层操作来收几乎都差不多,只要学会一个的话那么学别的就会特别快,MySQl一般来说都是第一个学习使用的数据库
- 版本
- 5.6.x 前几年使用频率最高的版本
- 5.7.x 最近几年在迁移的版本使用频率正在逐步上升
- 8.0.x 最新版本,功能非常强大,但是线上环境也就是公司中一般不会去使用这个版本,因为公司宁可使用十多年前的版本也要追求稳定性,否则一旦出事很难收拾,我们自己在个人使用的时候开源尝试使用8.0.x
- 版本之间虽然有所不同但是操作上基本没有什么改变
- 下载及其安装详情
- 访问官网 https://www.mysql.com/
- 点击DOWNLOADS https://www.mysql.com/downloads/
- 在下方点击GPL MySQL Community (GPL) Downloads »
- 点击community server https://dev.mysql.com/downloads/mysql/
- 点击archives https://downloads.mysql.com/archives/community/
- 点击download 一般选择64位的即可
- 安装使用管理员安装和登录并且设置自己的密码即可
- 重要文件介绍
- bin文件夹
- mysqld.exe 服务端
- mysql.exe 客户端
- data文件夹
- 存储数据
- my-default.ini
- 默认的配置文件
- bin文件夹

MySQL基本使用
- 先启动服务器
- 可能会有两种报错:寻找关键信息到浏览器寻找解决方式,一般为缺失文件,下个补丁应该就可以了
- 查找MySQL文件位置
- 打开一个cmd窗口输入 cd+文件路径 进入登录然后保持这个状态不动充当服务端即可
- 再次打开新的cmd窗口
- 进入MySQL直接回车就可以进入阉割的游客模式,但是功能很少
- 用户登录
- 输入mysql -u用户名 -p密码 ;就可以登录了
- 一般第一次的话直接输默认的账号密码即可 mysql -uroot 空密码即可登录
- 退出
- quit 退出
- exit 退出
系统服务制作
- 添加环境变量
- 找到我们系统的环境变量然后点击path将我们的mysql的bin文件夹的绝对路径添加进去即可
- 讲MySQL服务端设置成自动启动
- 以管理员身份进入cmd窗口,执行mysqld --install命令
- 然后有两种方式一种是使用系统服务命令 services.msc 调出系统设置找到MySQL然后启动
- 另一种方法是使用命令的方式 net start mysql
- 关闭服务器和移除系统服务
- 关闭服务器 net stop mysql
- 先确保服务已经关闭然后执行移除命令 mysqld --remove
密码相关操作
修改密码
mysqladmin命令
通用命令:
mysqladmin -u用户名 -p原密码 password 新密码
第一次修改
mysqladmin -uroot -p(这里为空就好因为默认密码为空,如果安装时你已经设置密码那么直接输你密码即可) password xxx
低版本修改简便方式: # 但是需要先登录
set password=PASSWORD(新密码)即可
忘记密码
把系统内存储你密码的那三个文件删除然后让你朋友将他的三个文件发你粘贴到那三个文件的地址上你用他的账号密码登录,然后你再更改
先关闭服务器,然后就不需要校验用户身份及逆行启动,再去修改安装正常方式启动
1.net stop mysql
2.mysqld --skip-grant-tabes
3.mysql -uroot -p
4.update mysql.user set password=password(xxx) where HOST='localhost' and User='root'
5.net stop mysql
6.net start mysql
SQL和NoSQL
- 兼容性
- 由于数据库是为了支持各种语言充当客户端,但是各种语言的区别有很大为了解决这个问题我们就像如何做到让所有的语言都可以使用我们的数据库那么就出现了两种方式
- 一种是服务端也就是数据库进行兼容所有语言,但是那样就会使服务端变得臃肿所以我们就应该使用另一种方式
- 自己制定一套标准所有的都遵循我的标准来执行那么就可以做到我的服务器又好用,还快,但是就是需要学一下我的简单语句就可以使用SQL语句和NoSQL语句两种
- 由于数据库是为了支持各种语言充当客户端,但是各种语言的区别有很大为了解决这个问题我们就像如何做到让所有的语言都可以使用我们的数据库那么就出现了两种方式
- 语法区别
- SQL语句的意思就是操作关系型数据库的语法
- NoSQL则是操作非关系型数据库
- 所以有时候SQL也被指为关系型数据库而NoSQL则指为非关系型数据库
数据库的重要概念
| 数据库 | 操作 | 作用 | 帮助理解 |
|---|---|---|---|
| 库 | show databases; | 查看所有的数据库 | 文件夹 |
| 表 | show tables; | 查看所有的表 | 文件夹中的文件 |
| 记录 | select * from mysql.user; | 查看user表中的所有记录 | 文件中的数据 |
数据库补充知识
| 符号 | 作用 |
|---|---|
| ;(分号) | SQL语句中的结束符 |
| \c | 取消SQL语句执行 |
针对库的基本SQL语句
| 操作 | 代码 | 作用 |
|---|---|---|
| 增 | create database 库名; | 增加一个新的库 |
| 查 | show databases; |show create database 库名; | 查询这个库下的数据 |
| 该 | alter database 库名 charset='gbk'; | 更改这个库下的数据 |
| 删 | drop database 库名; | 删除这个库 |
| 查看所在库名 | select database(库名); use 库名; | 如果没有的话默认为NULL |
针对表的基本SQL语句
| 操作 | 代码 | 作用 |
|---|---|---|
| 增 | create table 表名(字段名 字段类型) | 增加表内数据 |
| 查 | show tables;|show create table 表名; |descrlbe 表名;|desc 表名; | 查看表内的内容 |
| 改 | alter table 旧表名 rename 新表名; | 改表名 |
| 删 | drop table 表名; | 删除表 |
针对记录的基本SQL语句
| 操作 | 代码 | 作用 |
|---|---|---|
| 增 | insert into 表名 values(数据,数据); |insert into 表名 values(数据,数据); | 增加表内的数据 |
| 查 | select * from 表名; |select 字段1,字段2 from 表名; | 查看表内的所有字段 |
| 改 | updata 表名 set 字段名=新数据 where 筛选条件; | 修改表内的数据 |
| 删 | defete from 表名;|defete from 表名 where 筛选条件; | 删除表中所有数据和按条件删除数据 |
数据库简介与MySQL简介的更多相关文章
- mysql由浅入深探究(一)----数据库简介与mysql安装
mysql简介: 首先谈到mysql,我们要知道这是一个开源的数据库,与开源对应的就是free,但这并不意味着其性能会比很差,mysql同样能支持千万级以上的大数据量,甚至更多.同时mysql还支持许 ...
- 01--数据库MySQL:【数据库DB】和【数据库管理系统DBMS】 简介
1.数据库DB 数据库:DB(DataBase) 按照一定规则存储在计算机的内部存储设备上被各种用户或者应用共享的数据集合 2.数据库管理系统DBMS 1)数据库管理系统DBMS:DBMS(DataB ...
- MySQL数据库笔记一:简介及简单操作
一.初识MySQL数据库 1.数据库的概述 <1>数据库:Database 长期存储在计算机内的,有组织的,可共享的数据集合. 存储数据的仓库.(文件) <2>数据库管理系统: ...
- 第一章 Mysql 简介及安装和配置
Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一. ...
- mysql基础篇-----mysql简介
2017-04-19 一.mysql简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 ...
- MySQL(一)之MySQL简介与安装
大家可能都在用MySQL,其实我也是在用MySQL的,但是你知道吗?大部分人都是在windows中使用,这里将介绍一下在windows中的安装分为安装包安装与MSI包安装,以及在linux中的在线安装 ...
- PHP MySQL 简介
PHP MySQL 简介 通过 PHP,您可以连接和操作数据库. MySQL 是跟 PHP 配套使用的最流行的开源数据库系统. 如果想学习更多 MySQL 知识可以查看本站MySQL 教程. MySQ ...
- MySQL简介及安装
一.DBA工作内容及课程体系 二.MySQL课程体系介绍 三.DBA的职业素养 四.MySQL简介及安装 01 什么是数据? 02 什么是数据库管理系统 03 数据库管理系统种类 04 MySQL发展 ...
- mysql -> 简介&体系结构_01
数据库简介 数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增.截取.更新.删除等操作. 所谓“数据库”系以一定方式储存在一起.能予多个用户共享.具有尽可能小的 ...
随机推荐
- 腾讯云Redis全面升级,性能提升400%,可用性高达5个9
2022年6月,腾讯云Redis全新升级,发布高性能版本,单节点可提供50W+吞吐,性能是原生Redis的4倍.同时,腾讯云Redis推出全球复制功能,解决原生Redis诸多痛点问题,可用性升级高达9 ...
- 【freertos】012-事件标志概念和实现细节
目录 前言 12.1 实现事件机制的预备知识 12.1.1 守护任务 12.1.2 事件的不确定性 12.1.3 事件组的报文 12.2 事件概念 12.3 事件用途参考 12.4 事件实现原理简述 ...
- 3D编程模式:依赖隔离模式
大家好~本文提出了"依赖隔离"模式 系列文章详见: 3D编程模式:开篇 本文相关代码在这里: 相关代码 目录 编辑器需要替换引擎 设计意图 定义 应用 扩展 最佳实践 更多资料推荐 ...
- 从零开始实现lmax-Disruptor队列(二)多消费者、消费者组间消费依赖原理解析
MyDisruptor V2版本介绍 在v1版本的MyDisruptor实现单生产者.单消费者功能后.按照计划,v2版本的MyDisruptor需要支持多消费者和允许设置消费者组间的依赖关系. 由于该 ...
- ShardingSphere-proxy-5.0.0分布式哈希取模分片实现(四)
一.说明 主要是对字符串的字段进行hash取模 二.修改配置文件config-sharding.yaml,并重启服务 # # Licensed to the Apache Software Found ...
- python基础知识-day6(函数知识)
1.函数的特点 函数式的编程范式 面向对象的编程范式 所谓函数,就是把重复的代码单独的分离出来,放在一个公共的地方,以后可以一只调用,这样就可以解决多次重复来编写. 2.函数的定义 1 def fun ...
- SAP BPC 清除CUBE 中的数据
原理:先根据模型和查询条件取出数据,然后把金额设置为0,再写回CUBE. 1.获取数据并清空金额 *&--------------------------------------------- ...
- 开通博客-学习java之路
已被西南交通大学录取,毕设也已经进入末期.开始狂神说的Java学习之路,纪念一下!!!
- 基于Mybatis插件方式实现数据脱敏处理
一.项目介绍 1.项目背景 有时候我们数据库中存储一些敏感的信息比如手机号.银行卡号,我们希望我们查询出来的的时候对一些敏感信息做一些脱敏处理. 当面项目是基于自定义Mybatis插件方式实现数据脱敏 ...
- linux配置svn
1.安装 yum install subversion 2.测试安装是否成功: svnserve --version 3.创建目录并配置 建立版本库目录 mkdir -pv /data/svn/svn ...