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

news2024/11/17 21:18:27

数据库之 基础概念、安装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.coloradmin.cn/o/1419602.html

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

相关文章

inside 的坑

最近代码里面有一句inside 判断语句,明明条件满足,但是就是判断失败,代码如下: xxx;if(i inside {[7:0]}) begin //i5xxx;end xxx; 翻看sv 手册才发现 inside 后面跟的是range value,必须是从小写到大,也就…

腾讯云Linux(OpenCloudOS)安装tomcat9(9.0.85)

腾讯云Linux(OpenCloudOS)安装tomcat9 下载并上传 tomcat官网 https://tomcat.apache.org/download-90.cgi 下载完成后上传至自己想要放置的目录下 解压文件 输入tar -xzvf apache-tomcat-9.0.85.tar.gz解压文件,建议将解压后的文件重新命名为tomcat,方便后期进…

【vue】defineModel在vue3.4中的最新用法和详解

在2023年12月28日,尤大发布了vue3.4版本,这个版本主要对一些实验性特性的改进(比如defineModel),大量重写了模板编译器并重构了响应式系统,可以说是大大提升了运行速度和效率。 之前在vue3.3中defineModel…

应急消防应用步入“繁花”时代,卓翼智能消防无人机顺势而行大有可为

近日,北京卓翼智能科技有限公司(以下简称“卓翼智能”)宣布完成超亿元B轮融资,融资金额高达2.5亿元。这个“智能无人系统”黑马品牌,凭什么出圈?重点发力在哪些领域呢?今天,带你走进…

Ubuntu 22.04.1 LTS 编译安装 nginx-1.22.1,Nginx动静分离、压缩、缓存、黑白名单、跨域、高可用、性能优化

1.Ubuntu 22.04.1 LTS 编译安装 nginx-1.22.1 1.1安装依赖 sudo apt install libgd-dev 1.2下载nginx wget http://nginx.org/download/nginx-1.22.1.tar.gz 1.3解压nginx tar -zvxf nginx-1.22.1.tar.gz 1.4编译安装 cd nginx-1.22.1 编译并指定安装位置,执行安装…

华为笔记本matebook pro X如何扩容 C 盘空间

一、前提条件 磁盘扩展与合并必须是相邻分区空间,且两个磁盘类型需要相同。以磁盘分区为 C 盘和 D 盘为例,如果您希望增加 C 盘容量,可以先将 D 盘合并到 C 盘,然后重新创建磁盘分区,分配 C 盘和 D 盘的空间大小。 访…

2024 新年HTML5+Canvas制作3D烟花特效(附源码)

个人名片: 🐼作者简介:一名大三在校生,喜欢AI编程🎋 🐻‍❄️个人主页🥇:落798. 🐼个人WeChat:hmmwx53 🕊️系列专栏:🖼️…

Ajax入门与使用

目录 ◆ AJAX 概念和 axios 使用 什么是 AJAX? 怎么发送 AJAX 请求? 如何使用axios axios 函数的基本结构 axios 函数的使用场景 1 没有参数的情况 2 使用params参数传参的情况 3 使用data参数来处理请求体的数据 4 上传图片等二进制的情况…

上海亚商投顾:创业板指创调整新低,全市场超4800只个股下跌

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 一.市场情绪 沪指昨日震荡调整,创业板指午后跌超3%,深成指跌超2%,北证50指数跌逾6%。中…

sqli-labs-master less-1 详解

目录 关于MySQL的一些常识 information_schema 常用的函数 sqli-labs-master less-1 分析PHP源码 测试 关于MySQL的一些常识 information_schema information_schema 是 MySQL 数据库中的一个元数据(metadata)数据库,它包含…

LLM之makeMoE:makeMoE的简介、安装和使用方法、案例应用之详细攻略

LLM之makeMoE:makeMoE的简介、安装和使用方法、案例应用之详细攻略 目录 makeMoE的简介 1、对比makemore 2、相关代码文件 makMoE_from_Scratch.ipynb文件 makeMoE_Concise.ipynb文件 makeMoE的安装和使用方法 1、基于Databricks使用单个A100进行开发 makeM…

Mybatis 获取自增主键ID的几种方式

Mybatis 获取添加的自增主键ID的几种方式 需求实现1. 使用 GeneratedKeys2. 获取 Sequence 序号3. 使用 selectKey 标签 需求 很多时候新增了一条数据之后,不仅要知道是否插入成功,还需要获取存入之后的主键id 以便后续使用。通常的办法是:先…

C# IP v4转地址·地名 高德

需求: IPv4地址转地址 如:输入14.197.150.014,输出河北省石家庄市 SDK: 目前使用SDK为高德地图WebAPI 高德地图开放平台https://lbs.amap.com/ 可个人开发者使用,不过有配额限制。 WebAPI 免费配额调整公告https://lbs.amap.com/news/…

ArcGIS Pro 如何计算长度和面积等数据?

要素的几何属性属于比较重要的信息,作为一款专业的GIS软件,ArcGIS Pro自然也是带有计算几何的功能,这里为大家介绍一下计算方法,希望能对你有所帮助。 数据来源 教程所使用的数据是从水经微图中下载的矢量数据,除了矢…

基于JAVA+SpringBoot+Vue的前后端分离的美食分享推荐平台2

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目背景介绍: 在当今社会&#xff0…

对闭包的理解(闭包使用场景)

文章目录 一、是什么二、使用场景柯里化函数使用闭包模拟私有方法其他 三、注意事项 一、是什么 一个函数和对其周围状态(lexical environment,词法环境)的引用捆绑在一起(或者说函数被引用包围),这样的组…

23种设计模式-结构型模式

1.代理模式 在软件开发中,由于一些原因,客户端不想或不能直接访问一个对象,此时可以通过一个称为"代理"的第三者来实现间接访问.该方案对应的设计模式被称为代理模式. 代理模式(Proxy Design Pattern ) 原始定义是:让你能够提供对象的替代品或其占位符。…

构建高效外卖系统:利用Spring Boot框架实现

在当今快节奏的生活中,外卖系统已经成为人们生活中不可或缺的一部分。为了构建一个高效、可靠的外卖系统,我们可以利用Spring Boot框架来实现。本文将介绍如何利用Spring Boot框架构建一个简单但功能完善的外卖系统,并提供相关的技术代码示例…

Cloudreve个人网盘系统源码 支持云存储(七牛、阿里云OSS、腾讯云COS、又拍云、OneDrive) 基于Go框架

现在的网盘动不动就限速,涨价,弄得很是心烦。今天分享一款开源免费的网盘项目,基于 Go 语言开发的 Cloudreve。Cloudreve基于Go框架云存储个人网盘系统源码支持多家云存储驱动(从机、七牛、阿里云 OSS、腾讯云 COS、又拍云、OneDr…

20240126收获

el-table比较常见的需要跳转column的场景,目前遇到三种,一种是前面列变成序号,用的是typeindex和:index来设置索引,第二种是变成多选,用的是typeselect和在table上加上select-change事件,第三种…