1 数据库(上):MySQL的概述和安装、SQL简介

文章目录


前言


一、数据库相关的概念

  • 常见基本概念
名称 说明 简称
数据库 存储数据的仓库,数据是有组织的进行存储 DataBase (DB)
数据库管理系统 操纵和管理数据库的大型软件 DataBase Management System(DBMS)
SQL 操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准 Structured Query Language (sQL)
  • 什么是数据库?用于存储和管理数据的仓库。

  • 数据库的特点:

    • 持久化存储数据的。其实数据库就是一个文件系统
      我们平时使用的内存、硬盘其实都可以看做数据库;数据库其实简单理解成硬盘也是可以的。
      代码开发中,数据管理部分管理内存数据,其实数据库也是干这个活的。这么一解释立马就知道数据库有什么用了。
    • 方便存储和管理数据
    • 使用了统一的方式操作数据库 --SQL
  • 当前主流的关系型数据库管理系统(DBMS)有哪些?

    • MySQL: 开源免费的数据库,小型的数据库。已经被 Oracle 收购了.MySQL6.x版本也开始收费。
    • Oracle: 收费的大型数据库,Oracle 公司的产品。Oracle 收购SUN 公司,收购MYSQL
    • DB2:IBM公司的数据库产品,收费的。常应用在银行系统中.
    • SQLServer:MicroSoft公司收费的中型的数据库。C#、.net等语言常使用。
    • SyBase:已经淡出历史舞台。提供了一个非常专业数据建模的工具PowerDesigner。
    • SQLite:嵌入式的小型数据库,应用在手机端。
  • 常用数据库: MySQL,Oracle这两种是程序员需要掌握的一项技能。如果从事移动端开发SQLite要学。

二、MySQL概述

1 MySQL的安装和配置

安装视频

MySQL官方提供了商业版本(收费)和社区版本(免费),本系列博客仅仅用于学习,我们使用社区版本用于学习就可以了。

本课程采用的是MySOL的社区版(MySOLCommunityServer 8.0.31)

【注】:视频中是使用这个版本,不想搞事情就也使用这个版本。
安装包下载地址

安装具体过程就不演示了,有需要直接安装上面视频一步一步来就可以了。

【注】:上面这种解压式安装好像少了一个 my.ini配置文件没有自己创建,不过无所谓了,也能用。本机学习就这样了,后面我们都是要到linux系统上面去装

关于这个my.ini配置文件的问题,MySQL安装这篇博客比较完整,有强迫症可以自己按照这篇博客尝试。没有的话就按照上面视频上面来吧!

2 MySQL登录、退出

(1)mysql -uroot -p1234 或者mysql -uroot -p ---- 登录

(2)exit或者quit ---- 退出

经过了前面的配置,我们已经配置好了,并且有了一个root账号

  • 账户:root
  • 密码:1234

在cmd里面输入下列命令就能登录和退出了:

  • 登入:mysql -uroot -p1234
  • 退出:exit

3 远程登录服务器上的MySQL命令

mysql -hip地址 -P3306 -uroot -p连接目标的密码 ---- 远程连接服务器上的mysql命令

  • 应用场景
    我们在学习阶段是将MySQL装到本机上面学习;
    但是在企业中开发并不需要我们在本机上面安装MySQL,而是有专门的服务器上装了MySQL。
    我们要使用就只要远程连接到这个服务器上的MySQL了。

这个也很简单,一行命令就可以搞定:

这里的3306是MySQL默认端口号,全世界都知道哈哈哈

下面还是使用127.0.0.1连接本机试一下:

真正演示的话,有两种方法目前:使用虚拟机vmware或者直接去买一个服务器自己玩(建议装Linux)

先在本机上面学习吧!后面再买一台玩哈哈。

4 MySQL的卸载

如果一不小心第一次没装上,就去卸载吧!卸载流程上面视频上面也有。

5 MySQL数据模型

(1)关系型数据库和非关系型数据库

  • 关系型数据库 (RDBMS):建立在关系模型基础上,由多张相互连接的二维表组成的数据库
  • 特点:
    • 使用表存储数据,格式统一,便于维护
    • 使用SOL语言操作,标准统一,使用方便,可用于复杂查询
  • 非关系型数据库:不是以二维表结构存储的就是喽
    比较典型的就是我们后面要学习的redis是一种键值对类型的数据库

(2)数据库、表、数据(MySQL数据模型)

在MySQL里面数据库、表、数据这三个概念都是有具体的含义的。

  • 数据库:就是指文件夹
  • 表:就是指文件
  • 数据:就是文件里面的东西喽

如果是按照上面视频来的话:

安装好了MySQL可以在安装目录下面看到一个data文件夹

这个文件夹就是我们MySQL放数据的地方。继续点开

这个里面的每一个文件夹就是一个数据库。怎么验证,我们可以用SQL命令创建一个数据库看看

cmd下输入命令:
create database db01;

这就是创建一个命为db01的数据库

可以看到目录下生成了一个db01文件夹。因此就可以证明,数据库就是一个文件夹。

这就引出了MySQL的数据架构:

三、SQL简介

  • SQL: 一门操作关系型数据库的编程语言,定义操作所有关系型数据库的统一标准。

(1)SQL通用语法

  • SQL通用语法
    • SQL语句可以单行或多行书写,以分号结尾。
    • SQL语句可以使用空格/缩进来增强语句的可读性。
    • MySQL数据库的SQL语句不区分大小写。
    • 注释:
      单行注释 :-- 注释内容(两个横岗+一个空格,注意要有一个空格) 或 #注释内容(MySQL特有,#后面空格不是必须)
      多行注释: /*注释内容 */

(2)SQL分类

  • SQL分类
分类 全称 说明
DDL Data Definition Language 数据定义语言,用来定义数据库对象(数据库,表,字段);关键字: create,drop, alter 等
DML Data Manipulation Language 数据操作语言,用来对数据库表中的数据进行增删改;关键字: insert,delete,update 等
DQL Data Query Language 数据查询语言,用来查询数据库中表的记录;关键字: select,where 等
DCL Data Control Language 数据控制语言,用来创建数据库用户、控制数据库的访问权限;关键字:GRANT,REVOKE 等
相关推荐
python机器学习建模3 小时前
科研论文必须要了解的25个学术网站
数据库
J.P.August4 小时前
Oracle DataGuard启动与关闭顺序
数据库·oracle
尚雷55804 小时前
Oracle 与 达梦 数据库 对比
数据库·oracle·达梦数据库
小猿姐6 小时前
Ape-DTS:开源 DTS 工具,助力自建 MySQL、PostgreSQL 迁移上云
数据库·mysql·postgresql·开源
百香果果ccc6 小时前
MySQL中的单行函数和聚合函数
数据库·mysql
摸摸陌陌6 小时前
Redis快速入门
数据库·redis·缓存
Elastic 中国社区官方博客6 小时前
Elasticsearch Serverless 中的数据流自动分片
大数据·数据库·elasticsearch·搜索引擎·serverless·时序数据库
Minyy116 小时前
牛客网刷题SQL--高级查询
数据库·sql
ygqygq26 小时前
ElK 8 收集 MySQL 慢查询日志并通过 ElastAlert2 告警至飞书
mysql·elk·飞书
秋意钟6 小时前
MySQL基本架构
数据库·mysql·架构