数据库之 基础概念、安装mysql、sql语句基础

数据库之 基础概念、安装mysql、sql语句基础

【一】存储数据的演变过程:

  1. 文件存储: 初始阶段随意存放数据到文件,格式任意。
  2. 目录规范引入: 软件开发使用目录规范,限制数据位置,建立专门文件夹。
  3. 本地数据存储: 游戏数据本地保存,账号在本地有效。
  4. 单机转联网: 互联网时代,数据库服务端建立,数据统一存储,实现共享和稳定性。

【二】数据库的本质

  • 网络通信应用程序
  • 每人可开发数据库

【三】数据库的分类:

【1】关系型数据库

  • 包含:

    • MySQL, Oracle, db2, access, SQL Server
    • 采用关系模型,支持SQL查询语言。
  • 特点

    • 彼此关联表格存储,字段限制数据格式,支持各种操作

【2】非关系型数据库

  • 包含:

    • Redis, MongoDB, Memcached
    • 采用不同模型,如键值对、文档、图形。
  • 特点:

    • K:V形式存储,适用于临时高速访问不提供复杂查询和事务支持

【四】SQL语句由来

【1】Socket通信

  • 底层网络通信使用Socket
  • 服务端和客户端通过Socket进行消息传递。
    • mysqld.exemysql.exe 是 MySQL 数据库的客户端和服d务端程序,分别负责数据库的服务和客户端连接。

【2】SQL语句的产生

  • 为了使 MySQL 不仅能支持 MySQL 自己的客户端应用程序,还能支持其他编程语言
  • MySQL 采用了 SQL 作为统一的语言来进行数据操作。

【五】数据库的基本单位

【1】库(Database)

  • 存储和组织数据的容器
  • 类似文件夹,可以包含多个表。

【2】表(Table)

  • 用于存储和展示数据
  • 由行(记录)和列(字段)组成,类似电子表格。

【3】记录(Record)

  • 记录也称作行,是表中的一个数据项或实体。

  • 每行代表一个完整数据记录,包含各字段的具体数值或信息。

  • 类似于电子表格的一行数据

【4】表头(Header)

  • 表中的第一行,描述每列字段的含义,方便数据理解和查询

  • 通过表头可以了解每个列字段所代表的意义

  • 类似于电子表格的第一行

【5】表单(Form)

  • 用于收集和展示数据的界面
  • 包含输入字段和操作按钮,用户可进行数据录入、编辑和提交。

【六】数据库安装

【0】各个服务器的端口

  • MySQL :3306
  • Redis : 6379
  • MongoDB : 27017
  • Django : 8000
  • flask : 5000

【1】官网下载Mysql

  • MySQL :: Download MySQL Community Server

  • 选择5.7.44版本

  • 下载Windows (x86, 64-bit), ZIP Archive

【2】解压文件

  • 解压得到的文件夹就是安装目录,放置自己指定位置
  • 不要含有中文

【3】添加环境变量

  • 将文件夹的bin目录添加到系统环境变量Path中
D:\mysql\mysql-5.7.44-winx64\bin
【4】创建指定文件
  1. 在解压文件下创建my.ini配置文件

    • 文件内容
    [mysqld]
    # 设置3306端口
    port=3306
    # 设置mysql的安装目录
    basedir="D:\mysql\mysql-5.7.44-winx64"
    # 设置mysql数据库的数据的存放目录,就是前面手动创建的data目录
    datadir="D:\mysql\mysql-5.7.44-winx64\data"
    # 允许最大连接数
    max_connections=200
    # 允许连接失败的次数。
    max_connect_errors=10
    # 服务端使用的字符集默认为utf8mb4
    character-set-server=utf8mb4
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    # 默认使用“mysql_native_password”插件认证, mysql_native_password
    default_authentication_plugin=mysql_native_password
    [mysql]
    # 设置mysql网络通信的默认字符集
    default-character-set=utf8mb4
    [client]
    # 设置mysql客户端连接服务端时默认使用的端口
    port=3306
    # 设置mysql客户端的默认字符集
    default-character-set=utf8mb4
    
  2. 创建文件夹data

  3. 最终的目录结构

请添加图片描述

【5】初始化数据库

  • 打开cmd窗口(管理员),输入
mysqld --initialize --console
  • data文件夹下将得到初始化的数据
  • 最后会得到初始化密码,这个要赋值下来

请添加图片描述

【6】注册系统服务

  • 把mysql注册到操作系统作为系统服务,保证将来电脑重启了就可以开机自启了
mysqld --install
  • 注销方法
mysqld --remove

【7】启动和关闭服务

  • 启动服务
net start MySQL
  • 关闭服务
net stop MySQL
  • 重启服务
net stop MySQL && net start MySQL

【8】修改密码

  • 先登录
# 登录方式一
mysql -uroot -p
# 登录方式二
mysql -uroot -p密码
  • 修改密码
alter user 'root'@'localhost' identified by '新密码';
  • 刷新权限
FLUSH PRIVILEGES;
  • 退出MySQL客户端
exit;
  • 登录,输入新密码
mysql -u root -p

【9】跳过登录密码

  • 在my.ini文件中添加指定信息
[mysql]
# 不需要每次输入验证码即可登陆
user="root"
password=新密码
  • 重启服务
net stop MySQL && net start MySQL
  • 登录
mysql -uroot

【七】SQL语句基础

  • MySQL是关系型数据库,操作它需要使用SQL(结构化查询语言)。

【1】SQL规范

  • SQL语句关键字不区分大小写,但建议用大写。
  • 命令大写,数据库名、数据表名、字段名统一小写,避免冲突。
  • 使用反引号圈起同名的数据库名、数据表名、字段名与关键字。
  • SQL语句可单行或多行书写,以英文分号(;)结尾,关键词不能跨多行或简写。
  • 字符串和日期类型的值要用单引号括起来。
  • 单词之间使用半角空格隔开。
  • 使用空格和缩进提高SQL语句可读性。

【2】注释语法

(1)单行注释
# 注释内容sql语句 --注释内容
(2)多行注释
/*
注释内容
*/

【3】SQL类型

  • 根据用途不同,SQL语句分为三大类型:
(1)数据定义语言(DDl)
  • 用于创建或删除数据库数据表
  • 包括CREATE(创建)、DROP(删除)、ALTER(修改)
(2)数据操纵语言(DML)
  • 用于对数据表中的数据进行增删改查
  • 包括SELECT(查找)、INSERT(插入)、UPDATE(更新)、DELETE(删除)
(3)数据控制语言(DCL)
  • 用于控制数据的操作权限,包括用户权限数据操作权限
  • 包括COMMIT(确认对数据库的数据变更)、ROLLBACK(取消对数据库的数据变更)、GRANT(赋予用于操作权限)、REMOVE(取消用户的操作权限)
(4)补充
  • SHOW 属于 SQL 的一种语句,它通常用于检索关于数据库、数据表、用户权限等信息

  • SHOW 不属于 DDL、DML 或 DCL 中的一种,而是用于元数据查询和展示

    • SHOW DATABASES;:显示所有数据库的列表。
    • SHOW TABLES;:显示当前数据库中所有数据表的列表。
    • SHOW COLUMNS FROM 表名;:显示指定表的列信息。
    • SHOW GRANTS FOR 用户名;:显示给定用户的权限。

【4】SQL常用命令

  • help: 查看系统帮助信息。
  • status: 查看数据库管理系统的状态信息。
  • exit 或 quit: 退出数据库终端连接。
  • \c: 在打错命令后,想重新换行时使用,输入\c回车。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/650767.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单片机学习笔记---独立按键控制LED状态

上一节学习的是独立按键控制LED亮灭 这一节我们先来讲一下按键的抖动: 对于机械开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开,所以…

基于51单片机智能电子秤

实物显示效果: https://www.bilibili.com/video/BV1Wb4y1A7Aw/?vd_source6ff7cd03af95cd504b60511ef9373a1d 功能介绍: (1)用键盘设计单价; (2)称重后同时显示该物品的重量、单价和总额&…

大创项目推荐 题目:基于大数据的用户画像分析系统 数据分析 开题

文章目录 1 前言2 用户画像分析概述2.1 用户画像构建的相关技术2.2 标签体系2.3 标签优先级 3 实站 - 百货商场用户画像描述与价值分析3.1 数据格式3.2 数据预处理3.3 会员年龄构成3.4 订单占比 消费画像3.5 季度偏好画像3.6 会员用户画像与特征3.6.1 构建会员用户业务特征标签…

VR漫游:赋予用户720度身临其境的沉浸式体验

如今,VR全景技术已经成为了千行百业中不可或缺的一部分,随着用户对交互式、沉浸式体验的需求不断加强,VR漫游逐渐取代了传统图片,为人们带来了流畅且完整的VR宣传观看体验。 VR实景漫游真实的展示了现场环境,不仅增加了…

JavaEE 网络编程

JavaEE 网络编程 文章目录 JavaEE 网络编程引子1. 网络编程-相关概念1.1 基本概念1.2 发送端和接收端1.3 请求和响应1.4 客户端和服务端 2. Socket 套接字2.1 数据包套接字通信模型2.2 流套接字通信模型2.3 Socket编程注意事项 3. UDP数据报套接字编程3.1 DatagramSocket3.2 Da…

【C语言/数据结构】排序(直接插入排序|希尔排序)

🌈个人主页:秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343🔥 系列专栏:《数据结构》https://blog.csdn.net/qinjh_/category_12536791.html?spm1001.2014.3001.5482 ​​​​ 目录 插入排序 直接插入排序&…

Fink CDC 1.0 至3.0的从古至今

本文主要分享Flink CDC 1.0 至3.0的发展历程,了解其背后的关键特性和发展趋势,探讨其在大数据领域的影响和价值。 一、CDC概述 CDC是一种用以掌控数据变化的软件架构(技术思路),用于捕获和传递数据库中发生的数据变化。当数据库中发生增(INSERT)/删(DELETE)/改(UPD…

Java实现数字化社区网格管理系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、开发背景四、系统展示五、核心源码5.1 查询企事业单位5.2 查询流动人口5.3 查询精准扶贫5.4 查询案件5.5 查询人口 六、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的数字化社区网格管理系统&#xf…

燃烧的指针(三)

🌈个人主页:小田爱学编程 🔥 系列专栏:c语言从基础到进阶 🏆🏆关注博主,随时获取更多关于c语言的优质内容!🏆🏆 😀欢迎来到小田代码世界~ &#x…

【AndroidStudio】2022.3Giraffe连接超时,更换下载源,使用本地gradle,版本对应问题

记录了使用AndroidStudio2022.3 Giraffe版本在搭建环境时遇到的问题,包括连接超时,gradle无法读取等。 如果只看如何正确的配置,直接跳转第3节 配置汇总 1 连接超时 项目一开始会自动下载gardle文件来加载项目 1.1 Connect timed out 基…

算法38:子数组的最小值之和(力扣907题)----单调栈

题目: 给定一个整数数组 arr,找到 min(b) 的总和,其中 b 的范围为 arr 的每个(连续)子数组。 示例 1: 输入:arr [3,1,2,4] 输出:17 解释: 子数组为 [3],[…

go语言(十八)---- goroutine

一、goroutine package mainimport ("fmt""time" )func main() {//用go创建承载一个形参为空,返回值为空的一个函数go func() {defer fmt.Println("A.defer")func() {defer fmt.Println("B.defer")//退出当前goroutinefmt…

Ubuntu添加AppImage到桌面及应用程序菜单

将AppImage添加到桌面,以PicGo为例 效果: 在桌面创建PicGo.desktop文件,输入以下内容: [Desktop Entry] EncodingUTF-8 TypeApplication #应用名称 NamePicGo #图标路径 Icon/usr/local/AppImage/icons/PicGo.png #启动是否开启…

谁管谁叫爹

L1-8 谁管谁叫爹 分数 20 作者 陈越 单位 浙江大学 《咱俩谁管谁叫爹》是网上一首搞笑饶舌歌曲,来源于东北酒桌上的助兴游戏。现在我们把这个游戏的难度拔高一点,多耗一些智商。…

探索Pyecharts之美-绘制多彩旭日图的艺术与技巧【第37篇—python:旭日图】

文章目录 引言准备工作绘制基本旭日图调整颜色和样式添加交互功能定制标签和标签格式嵌套层级数据高级样式与自定义进阶主题:动态旭日图数据源扩展:外部JSON文件总结 引言 数据可视化在现代编程中扮演着重要的角色,而Pyecharts是Python中一个…

JAVA编程题之用户登录,用户信息存储在本地文件

实现用户登录:键盘输入要登录的用户名与密码 properties类型文件常在框架内用作配置文件. public static void main(String[] args) throws Exception {FileInputStream fis new FileInputStream("user.properties");Properties properties new Prope…

为什么 FPGA 比 CPU 和 GPU 快?

FPGA、GPU 与 CPU——AI 应用的硬件选择 现场可编程门阵列 (FPGA) 为人工智能 (AI) 应用带来许多优势。图形处理单元 (GPU) 和传统中央处理单元 (CPU) 相比如何? 人工智能(AI)一词是指能够以类似于人类的方式做出决策的非人类机器智能。这包…

k8s 进阶实战笔记 | Pod 创建过程详解

Pod 创建过程详解 ​ 初始状态0 controller-manager、scheduler、kubelet组件通过 list-watch 机制与 api-server 通信并检查资源变化 第一步 用户通过 CLI 或者 WEB 端等方式向 api-server 发送创建资源的请求(比如:我要创建一个replicaset资源&…

多表查询练习题

student表: score表: 向student表插入记录: 向score表插入记录: 1.查询student表的所有记录 SELECT * FROM student;2.查询student表的第2条到4条记录 SELECT * FROM student LIMIT 1,3;3.从student表查询所有学生的学号(id)、姓名(name&…

【复现】Laykefu客服系统后台漏洞合集_29

目录 一.概述 二 .漏洞影响 三.漏洞复现 1. 漏洞一: 2. 漏洞二: 3. 漏洞三: 4. 漏洞四: 四.修复建议: 五. 搜索语法: 六.免责声明 一.概述 Laykefu客服系统是thinkphp5Gatewayworker搭建的web客服…