【MySQL】下载安装以及SQL介绍

news2024/11/24 17:48:03

1,数据库相关概念

以前我们做系统,数据持久化的存储采用的是文件存储。存储到文件中可以达到系统关闭数据不会丢失的效果,当然文件存储也有它的弊端。

假设在文件中存储以下的数据:

姓名  年龄  性别  住址
张三  23  男   北京西三旗
李四  24  女   北京西二旗
王五  25  男   西安软件新城

现要修改李四这条数据的性别数据改为男,我们现学习的IO技术可以通过将所有的数据读取到内存中,然后进行修改再存到该文件中。通过这种方式操作存在很大问题,现在只有三条数据,如果文件中存储1T的数据,那么就会发现内存根本就存储不了。

现需要既能持久化存储数据,也要能避免上述问题的技术使用在我们的系统中。数据库就是这样的一门技术。

1.1 数据库

  • ==存储和管理数据的仓库,数据是有组织的进行存储。==

  • 数据库英文名是 DataBase,简称DB。

数据库就是将数据存储在硬盘上,可以达到持久化存储的效果。那又是如何解决上述问题的?使用数据库管理系统。

1.2 数据库管理系统

  • ==管理数据库的大型软件==

  • 英文:DataBase Management System,简称 DBMS

在电脑上安装了数据库管理系统后,就可以通过数据库管理系统创建数据库来存储数据,也可以通过该系统对数据库中的数据进行数据的增删改查相关的操作。我们平时说的MySQL数据库其实是MySQL数据库管理系统。

通过上面的描述,大家应该已经知道了 数据库管理系统数据库 的关系。那么有有哪些常见的数据库管理系统呢?

1.3 常见的数据库管理系统

接下来对上面列举的数据库管理系统进行简单的介绍:

  • Oracle:收费的大型数据库,Oracle 公司的产品

  • ==MySQL==: 开源免费的中小型数据库。后来 Sun公司收购了 MySQL,而 Sun 公司又被 Oracle 收购

  • SQL Server:MicroSoft 公司收费的中型的数据库。C#、.net 等语言常使用

  • PostgreSQL:开源免费中小型的数据库

  • DB2:IBM 公司的大型收费数据库产品

  • SQLite:嵌入式的微型数据库。如:作为 Android 内置数据库

  • MariaDB:开源免费中小型的数据库

我们课程上学习的是MySQL数据库管理系统,PostgreSQL在一些公司也有使用,此时大家肯定会想以后在公司中如果使用我们没有学习过程的PostgreSQL数据库管理系统怎么办?这点大家大可不必担心,如下图所示:

我们可以通过数据库管理系统操作数据库,对数据库中的数据进行增删改查操作,而怎么样让用户跟数据库管理系统打交道呢?就可以通过一门编程语言(SQL)来实现。

1.4 SQL

  • 英文:Structured Query Language,简称 SQL,结构化查询语言

  • 操作关系型数据库的编程语言

  • 定义操作所有关系型数据库的统一标准,可以使用SQL操作所有的关系型数据库管理系统,以后工作中如果使用到了其他的数据库管理系统,也同样的使用SQL来操作。

2,MySQL

2.1 MySQL安装

安装环境:Win10 64位 软件版本:MySQL 5.7.24 解压版

2.1.1 下载

MySQL :: Download MySQL Community Server (Archived Versions)

点开上面的链接就能看到如下界面:

选择选择和自己系统位数相对应的版本点击右边的Download,此时会进到另一个页面,同样在接近页面底部的地方找到如下图所示的位置:

img

不用理会上面的登录和注册按钮,直接点击 No thanks, just start my download. 就可以下载。

2.1.2 安装(解压)

下载完成后我们得到的是一个压缩包,将其解压,我们就可以得到MySQL 5.7.24的软件本体了(就是一个文件夹),我们可以把它放在你想安装的位置。


2.2 MySQL卸载

如果你想卸载MySQL,也很简单。

右键开始菜单,选择命令提示符(管理员),打开黑框。

  1. 敲入net stop mysql,回车。

net stop mysql

  1. 再敲入mysqld -remove mysql,回车。

mysqld -remove mysql

  1. 最后删除MySQL目录及相关的环境变量。

至此,MySQL卸载完成!

2.3 MySQL配置

2.3.1 添加环境变量

环境变量里面有很多选项,这里我们只用到Path这个参数。为什么在初始化的开始要添加环境变量呢? 在黑框(即CMD)中输入一个可执行程序的名字,Windows会先在环境变量中的Path所指的路径中寻找一遍,如果找到了就直接执行,没找到就在当前工作目录找,如果还没找到,就报错。我们添加环境变量的目的就是能够在任意一个黑框直接调用MySQL中的相关程序而不用总是修改工作目录,大大简化了操作。

右键此电脑属性,点击高级系统设置

点击环境变量

系统变量中新建MYSQL_HOME

系统变量中找到并双击Path

点击新建

最后点击确定。

如何验证是否添加成功?

右键开始菜单(就是屏幕左下角),选择命令提示符(管理员),打开黑框,敲入mysql,回车。 如果提示Can't connect to MySQL server on 'localhost'则证明添加成功; 如果提示mysql不是内部或外部命令,也不是可运行的程序或批处理文件则表示添加添加失败,请重新检查步骤并重试。

2.3.2 新建配置文件

新建一个文本文件,内容如下:

[mysql]
default-character-set=utf8
​
[mysqld]
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

把上面的文本文件另存为,在保存类型里选所有文件 (*.*),文件名叫my.ini,存放的路径为MySQL的根目录(例如我的是D:\software\mysql-5.7.24-winx64,根据自己的MySQL目录位置修改)。

上面代码意思就是配置数据库的默认编码集为utf-8和默认存储引擎为INNODB。

2.3.3 初始化MySQL

在刚才的黑框中敲入mysqld --initialize-insecure,回车,稍微等待一会,如果出现没有出现报错信息(如下图)则证明data目录初始化没有问题,此时再查看MySQL目录下已经有data目录生成。

mysqld --initialize-insecure

tips:如果出现如下错误

是由于权限不足导致的,去C:\Windows\System32 下以管理员方式运行 cmd.exe

2.3.4 注册MySQL服务

在黑框里敲入mysqld -install,回车。

mysqld -install

现在你的计算机上已经安装好了MySQL服务了。

MySQL服务器

2.3.5 启动MySQL服务

在黑框里敲入net start mysql,回车。

net start mysql  // 启动mysql服务
    
net stop mysql  // 停止mysql服务

2.3.6 修改默认账户密码

在黑框里敲入mysqladmin -u root password 1234,这里的1234就是指默认管理员(即root账户)的密码,可以自行修改成你喜欢的。

mysqladmin -u root password 1234

至此,MySQL 5.7 解压版安装完毕!

2.4 MySQL登陆和退出

2.4.1 登陆

右键开始菜单,选择命令提示符,打开黑框。 在黑框中输入,mysql -uroot -p1234,回车,出现下图且左下角为mysql>,则登录成功。

mysql -uroot -p1234

到这里你就可以开始你的MySQL之旅了!

登陆参数:

mysql -u用户名 -p密码 -h要连接的mysql服务器的ip地址(默认127.0.0.1) -P端口号(默认3306)

2.4.2 退出

退出mysql:

exit
quit

2.5 MySQL数据模型

关系型数据库:

关系型数据库是建立在关系模型基础上的数据库,简单说,关系型数据库是由多张能互相连接的 二维表 组成的数据库

如下图,订单信息表客户信息表 都是有行有列二维表我们将这样的称为关系型数据库。

  • DQL(Data Query Language) 数据查询语言,用来查询数据库中表的记录(数据)

    DQL简单理解就是对数据进行查询操作。从数据库表中查询到我们想要的数据。

  • DCL(Data Control Language) 数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户

    DML简单理解就是对数据库进行权限控制。比如我让某一个数据库表只能让某一个用户进行操作等。

注意: 以后我们最常操作的是 DMLDQL ,因为我们开发中最常操作的就是数据。

3,SQL概述

了解了数据模型后,接下来我们就学习SQL语句,通过SQL语句对数据库、表、数据进行增删改查操作。

3.1 SQL简介

  • 英文:Structured Query Language,简称 SQL

  • 结构化查询语言,一门操作关系型数据库的编程语言

  • 定义操作所有关系型数据库的统一标准

  • 对于同一个需求,每一种数据库操作的方式可能会存在一些不一样的地方,我们称为“方言”

3.2 通用语法

  • SQL 语句可以单行或多行书写,以分号结尾。

    如上,以分号结尾才是一个完整的sql语句。

  • MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写。

    同样的一条sql语句写成下图的样子,一样可以运行处结果。

  • 注释

    • 单行注释: -- 注释内容 或 #注释内容(MySQL 特有)

    • 注意:使用-- 添加单行注释时,--后面一定要加空格,而#没有要求。

    • 多行注释: /* 注释 */

3.3 SQL分类

  • DDL(Data Definition Language) : 数据定义语言,用来定义数据库对象:数据库,表,列等

    DDL简单理解就是用来操作数据库,表等

  • DML(Data Manipulation Language) 数据操作语言,用来对数据库中表的数据进行增删改

    DML简单理解就对表中数据进行增删改

  • DQL(Data Query Language) 数据查询语言,用来查询数据库中表的记录(数据)

    DQL简单理解就是对数据进行查询操作。从数据库表中查询到我们想要的数据。

  • DCL(Data Control Language) 数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户

    DML简单理解就是对数据库进行权限控制。比如我让某一个数据库表只能让某一个用户进行操作等。

注意: 以后我们最常操作的是 DMLDQL ,因为我们开发中最常操作的就是数据。

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

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

相关文章

【MySQL】DDL和DML

4,DDL:操作数据库 我们先来学习DDL来操作数据库。而操作数据库主要就是对数据库的增删查操作。 4.1 查询 查询所有的数据库 SHOW DATABASES; 运行上面语句效果如下: 上述查询到的是的这些数据库是mysql安装好自带的数据库,我们以后不要操…

树莓派 PICO配置教程-hello world,基础教程,如何配置树莓派pico,raspberry pico(基于MicroPython)

1 树莓派 PICO 简介 1.1 简介 Raspberry Pi Pico是具有灵活数字接口的低成本,高性能微控制器板。它集成了Raspberry Pi自己的RP2040微控制器芯片,运行速度高达133 MHz的双核Arm Cortex M0 处理器,嵌入式264KB SRAM和2MB板载闪存以及26个多功…

uniapp小程序console.log在微信开发者工具中不打印问题

最近在开发一款uniapp小程序,发现console.log在微信开发者工具中不打印,但在H5页面就能够有打印输出,于是在网上寻找原因… 主要是由于vue.config.js文件中有设置发布时删除console的配置,如下: 官网参考地址&#x…

涛思数据与拾贝云达成战略合作,携手赋能工业数字化转型

2023 年 7 月 27 日,北京涛思数据科技有限公司(以下简称“涛思数据”)与广州拾贝云科技有限公司(以下简称“拾贝云”)于广州签署战略合作协议。双方围绕电力行业的需求与痛点展开积极讨论,就如何量身打造最…

3分钟白话RocketMQ系列—— 核心概念

白话3分钟,快速了解RocketMQ基础,包括适用场景,以及基本概念。 看完如果不了解,欢迎来打我。 关键字摘要 低延迟、高可用、高可靠、高并发 的消息中间件适合在线业务分为producer、consumer、nameserver、broker等角色另外还有主…

第一次创建OBBH、OB28如何关联到程序ZGGBS000、ZGGBR000

如果做替代OBBH、校验OB28网上有很多的资料,我就不多说了。 但是对于某项目、服务器第一做OBBH、OB28时,我们将程序RGGBS000、RGGBR000复制成ZGGBS000、ZGGBR000后,如何将OBBH、OB28与我们的程序ZGGBS000、ZGGBR000关联呢? 用SM…

如何以无服务器方式运行 Go 应用程序

Go编程语言一直以来都对构建REST API提供了丰富的支持。这包括一个出色的标准库(net/HTTP),以及许多流行的包,如Gorilla mux、Gin、Negroni、Echo、Fiber等。使用AWS Lambda Go运行时,我们可以使用Go构建AWS Lambda函数…

盖雅工场典范案例之纤维隐形冠军兰精的人效提升密码

一面是严苛的环保工艺要求企业不能只关注降本,一面是“为人所有 与人共享”的企业文化将“人”摆在极其重要的位置。 如何找到一条合适的人效提升路径,既能持续高速发展,又让员工干得满意、自豪? 注:本文整理自盖雅工…

STM SPI学习

SPI介绍 SPI:串行外设设备接口(Serial Peripheral Interface),是一种高速的,全双工,同步通信总线。 IIC总线与SPI总线对比 全双工:同一时刻既能接收数据,也能发送数据。 CS&…

windows上给oracle打补丁注意事项

打补丁的过程 1、升级opatch工具,检查剩余空间用于存放ORACLE_HOME的备份,设置oracle_home环境变量,通过readme中的先决条件来检查现有补丁是否和本次补丁冲突 2、opatch apply 升级数据库软件,这个必须数据库文件不要被进程调用 在windows上…

VS中使用QT的插件:QT VS Tools

1、插件下载 (1)可以在VS中的管理扩展中直接搜索安装,但是我下载太慢,甚至是根本就无法安装。 (2)qt插件下载地址:Index of /official_releases/vsaddin 这个地址下载就很快,下载…

关于BQ27427的配置问题

EVM是TI家做的BQ27427的开发板,这款芯片还挺新的。 大概是这样,一块开发板要一千多块钱,使用的时候还出现了一些奇怪的问题。 配置使用的是买的盗版的EV2400,就是黑色的那个东西,使用的通信方式IIC。 TI手册上写的软件…

实战:Prometheus+Grafana监控Linux服务器及Springboot项目

文章目录 前言知识积累什么是Prometheus什么是Grafana怎样完成数据采集和监控 环境搭建docker与docker-compose安装docker-compose编写 监控配置grafana配置prometheus数据源grafana配置dashboardLinux Host Metrics监控Spring Boot 监控 写在最后 前言 相信大家都知道一个项目…

@ConfigurationProperties

目录 ConfigurationProperties 自定义bean使用注入 第三方bean注入 EnableConfigurationProperties ConfigurationProperties 当想需要获取到配置文件数据时,除了可以用 Spring 自带的 Value 注解外,SpringBoot 还提供了一种更加方便的方式&#xff1…

零基础C#编写上位机如何入门?

学习C#基础语法和.NET框架,掌握基本编程概念和语法,例如数据类型、类、对象、继承、多态、异常处理等。学习WinForm窗体应用程序开发技术,掌握窗体应用程序的设计和开发,例如控件的使用、事件驱动编程、窗体的布局与设计等。学习数…

结构重参数化详解。(bn+conv)与(conv+bn)的融合

结构重参数化详解。(bnconv)与(convbn)的融合 原理哪种情况不能合并?带bn的合并结构(conv bn)(bn conv)需要注意:pytorch代码 原理 如何理解结构重参数化&…

低代码是什么意思?

低代码是什么意思? 简单而言,低代码(Low-code)是一种软件开发和应用开发方法论,旨在帮助开发人员快速构建应用软件,同时减少繁琐的手动编码工作。该方法论注重简化开发流程,通过可视化建模和少…

【eNSP】Telnet远程登录

Telnet远程登录 eNSP软件TelnetTelnet远程登录-路由连接关闭防火墙eNSP根据图1画图路线配置路由端口IP配置路由R1改名配置接口IP 配置路由R2 配置R2的远程登录设置登录用户授权级别退出登录超时时间 Telnet测试 eNSP软件 eNSP(Enterprise Network Simulation Platform)是一款由…

RocketMQ 5.x延时消息源码分析(不包含时间轮)

这里是weihubeats,觉得文章不错可以关注公众号小奏技术,文章首发。拒绝营销号,拒绝标题党 RocketMQ版本 5.1.0 背景 首先说明本次源码分析仅分析时间轮之前的延时消息设计 现在的RocketMQ已经支持基于时间轮的任意级别延时消息 延时消息基础知识 默认…

2023财务ERP-业财一体化ERP系统功能应用,实现河北企业报表专业管理|亿发

信息技术迅速发展,传统的人工管理会导致财务与业务数据割裂,繁琐的数据处理和低效的财务管理已经不能满足河北省企业的发展需要,需要通过智能化手段持续推动河北企业的组织和管理变革。而在数字化时代,业财一体化建设与应用正逐渐…