Mysql001:Mysql概述以及安装

前言:本课程将从头学习Mysql,以我的工作经验来说,sql语句真的太重要的,现在互联网所有的一切都是建立在数据上,因为互联网的兴起,现在的数据日月增多,每年都以翻倍的形式增长,对于数据的管理日发重要,sql语法便是最重要的一个部分。

本章节将讲解一下内容:

基础篇:

》Mysql概述

》SQL

》函数

》约束

》多表查询

》事务

进阶篇:

》存储引擎

》索引

》SQL优化

》视图、存储过程、触发器

》锁

》InnoDB核心

》Mysql管理

运维篇:

》日志

》主从复制

》分库分表

》读写分离

数据库相关概念:

数据库:数据存储的仓库,简称DataBase(DB)。一个数据从界面存放到硬盘中,是交由电脑去实现的,而人想让电脑按照自己的意愿去操作数据, 用的就是sql语句,数据+sql+硬盘便可视为数据库。

关系型数据库、非关系型数据库:

在数据库中, 有关系型数据库于非关系型数据,

关系型数据库使用表格来组织数据,使用结构化查询语言(SQL)进行查询。它们适合处理高度结构化的数据和复杂的关系,对数据一致性和事务处理有严格要求,例如金融系统和企业资源管理。

讲人话:是以类似于excel表格形式来存储数据,适合存储非常复杂的数据,经常出现在金融类型行业

非关系型数据库是一种没有固定模式的数据库,以键值对、文档、列族或图形等方式存储数据,通常不使用SQL作为查询语言。它们适合处理大规模数据和高并发访问,强调可扩展性和性能,例如社交媒体数据和实时分析。

讲人话:是以类似于键值对来存储数据,适用于数据库量非常大的场景,性能比较出众,经常出现在社交媒体行业

关系型数据库细分种类:

  1. MySQL:一种流行的开源关系型数据库,具有良好的性能和易用性。
  2. PostgreSQL:一种功能强大的开源关系型数据库,支持复杂的数据类型和高级特性。
  3. Oracle Database:一种商业级的关系型数据库,广泛应用于企业级应用,具有强大的可扩展性和安全性。
  4. Microsoft SQL Server:由微软提供的关系型数据库管理系统,适用于窗​​户平台和与其他微软产品集成。
  5. SQLite:一种嵌入式关系型数据库,非常轻量级,适用于移动应用和小型项目。
  6. IBM DB2:一种可扩展的关系型数据库,适用于企业级应用和大型数据处理。
  7. MariaDB:由MySQL的创始人创建的开源关系型数据库,与MySQL兼容,并提供一些额外的功能和性能改进。
  8. Sybase:一种用于企业级应用的关系型数据库,具有高性能和可扩展性。
  9. Teradata:专注于大规模数据仓库和分析的关系型数据库系统。
  10. Informix:一种高性能的关系型数据库,适用于企业级应用和实时数据处理。

非关系型数据细分种类:

  1. 键值存储数据库(Key-value store):以键值对的形式存储数据,适用于简单的数据模型和高速读写操作。例如Redis、Memcached和DynamoDB等。

  2. 文档数据库(Document store):以类似于JSON或XML的文档格式存储数据,适用于半结构化数据和灵活的查询需求。例如MongoDB、CouchDB和Elasticsearch等。

  3. 列族数据库(Column store):将数据按列簇进行存储,适用于具有大量列和变化的数据模式。例如HBase和Cassandra等。

  4. 图形数据库(Graph database):专注于存储和查询图形结构的数据,适用于复杂的关系和图形分析。例如Neo4j和ArangoDB等。

  5. 对象数据库(Object database):以对象的形式存储数据,适用于对象导向编程和复杂数据模型。虽然非关系型数据库中对象数据库的使用较少,但一些产品仍在使用,例如db4o和Versant等。

哇,这么多,你学得完么,就算你学得完你记得完么?反之我记不完也学不完,所以就学mysql语法可以了,sql语法适用大分部种类数据库,就学一个可以了, 除非你想拿诺贝尔奖。

现如今打分企业用的都是Mysql和Oracle,你问我有什么区别?那我只能肤浅一点回答你了,mysql是免费的,适用中小型企业;Oracle是收费的,适用大型企业。后来mysql被oracle收购了,然后捣鼓了一下,就推出了收费版的mysql。当然免费版的mysql还是存在的,不然我可没钱买一个mysql来讲解。 

Mysql数据库的安装:

目前Mysql提供了社区版和商业版, 也就是免费版和收费版。以下将用免费版进行说明。

mysql官方下载地址:MySQL :: MySQL Downloads

在安装之前, 需要卸载本地mysql,如果没有安装过则跳过。

cmd输入:mysql -V ,如果出现以下则说明安装过mysql,需要卸载。

卸载教程: https://mp.csdn.net/mp_blog/creation/editor/132521560

接下来接着说安装,双击安装文件:

等待安装

 选择默认的开发模式,下一步

检查所需要的环境, 点击下一步

等待它安装完成

安装完成后,点击下一步

然后还是下一步

这个界面也不用做任何改动, 直接点击下一步

下一步

这里需要你设置数据库密码, 学习的话,建议设置简单

这个说明mysql会自动在电脑开启一个服务,服务名称叫MySQL80,直接点击下一步即可

 这个界面是配置权限说明界面, 默认下一步

点击下一步,让系统配置服务

 

 至此,数据库就安装完成了

配置mysql的环境变量:

首先进入:C:\Program Files 目录, 找打mysql目录,进入mysql的bin目录将其复制出来

然后放入path变量中,不知道在哪进入电脑的环境变量可度一下。

 验证一下是否配置成功,在cmd输入:mysql -V, 出现版本号说明配置成功

试一下登录指令能不能用,打开cmd,输入命令:mysql -h 127.0.0.1 -P 3306 -u root -p

127.0.0.1:是本地地址,也是数据库地址

3306:端口号(注意,3306前面的-P 是大写, 不是小写的p,输入小写会无法连接)

root:数据库用户名(它是默认管理员用户名)

出现以下内容则说明成功了。(注意:cmd窗口必须管理员运行,否则会报错)

启动、连接、停止mysql

方式一

cmd命令启动mysql:net start mysql80

cmd命令停止mysql:net stop mysql80

注意:如果输入命令时提示“系统发生错误5,拒绝访问”, 那大概率是权限不足导致,解决方法是需要以管理员方式运行cmd命令窗口即可

方式二

在服务里面就可以找到mysql服务名

 启动和停止可以在这里操作, 我这里已经启动了 

连接mysql:远程连接工具有很多种, 这里建议使用DBeaver, 因为它免费呀。当然你也可以用Navicat等之类的工具,界面操作都大差不差。

DBeaver官网下载地址:https://dbeaver.io/download/

DBeaver安装教程:http://t.csdn.cn/LTi6k

方式一:mysql自带命令行连接

 

方式二: cmd窗口连接

打开cmd,输入命令:mysql -h 127.0.0.1 -P 3306 -u root -p

127.0.0.1:是本地地址,也是数据库地址

3306:端口号(注意,3306前面的-P 是大写, 不是小写的p,输入小写会无法连接)

root:数据库用户名(它是默认管理员用户名)

输入密码回车(注意:输入密码时是不显示了,但实际已经输入了)

 

方式三:远程客户端工具连接

输入地址、端口、用户名、密码进行连接

再试一下查询语句

安装成功-----------

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

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

相关文章

微服务系统面经之二: 以秒杀系统为例

16 微服务与集群部署 16.1 一个微服务一般会采用集群部署吗? 对于一个微服务是否采用集群部署,这完全取决于具体的业务需求和系统规模。如果一个微服务的访问压力较大,或者需要提供高可用性,那么采用集群部署是一种常见的策略。…

Linux(实操篇一)

Linux实操篇 Linux(实操篇一)1. 常用基本命令1.1 帮助命令1.1.1 man获得帮助信息1.1.2 help获得shell内置命令的帮助信息1.1.3 常用快捷键 1.2 文件目录类1.2.1 pwd显示当前 工作目录的绝对路径1.2.2 ls列出目录的内容1.2.3 cd切换目录1.2.4 mkdir创建一个新的目录1.2.5 rmdir删…

Django基础6——数据模型关系

文章目录 一、基本了解二、一对一关系三、一对多关系3.1 增删改查3.2 案例:应用详情页3.2 案例:新建应用页 四、多对多关系4.1 增删改查4.2 案例:应用详情页4.3 案例:部署应用页 一、基本了解 常见数据模型关系: 一对一…

vue数字输入框

目录 1.emitter.JS function broadcast (componentName, eventName, params) {this.$children.forEach(child => {var name = child.$options.componentNameif (name === componentName) {child.$emit.apply(child, [eventName].concat(params))} else {broadcast.apply(c…

Echarts面积图2.0(范围绘制)

代码: // 以下代码可以直接粘贴在echarts官网的示例上 // 范围值 let normalValue {type: 内部绘制,minValue: 200,maxValue: 750 } // 原本的绘图数据 let seriesData [820, 932, 901, 934, 1290, 1330, 1320] let minData Array.from({length: seriesData.len…

权限提升-手工-系统权限提升

权限提升基础信息 1、具体有哪些权限需要我们了解掌握的? 后台权限,网站权限,数据库权限,接口权限,系统权限,域控权限等 2、以上常见权限获取方法简要归类说明? 后台权限:SQL注入,数…

pytorch中torch.gather()简单理解

1.作用 从输入张量中按照指定维度进行索引采集操作,返回值是一个新的张量,形状与 index 张量相同,根据指定的索引从输入张量中采集对应的元素。 2.问题 该函数的主要问题主要在dim维度上,dim0 表示沿着第一个维度(行…

JavaScript用indexOf()在字符串数组中查找子串时需要注意的一个地方

一、遇到问题 在 继续更新完善:C 结构体代码转MASM32代码 中,由于结构体成员中可能为数组类型的情况,因此我们在提取结构体成员信息的过程中,需要检测结构体成员名称字符串中是否包括 [],如果包括那么我们要截取[前面…

linux操作系统的权限的深入学习

1.Linux权限的概念 Linux下有两种用户:超级用户(root)、普通用户。 超级用户:可以再linux系统下做任何事情,不受限制 普通用户:在linux下做有限的事情。 超级用户的命令提示符是“#”,普通用户…

vue中form、table和input标签过长

form标签过长 效果&#xff1a; 代码&#xff1a; <el-form-item v-for"(item,index) in ticketEditTable1" :label"item.fieldNameCn" :propitem.fieldName :key"item.fieldNameCn" overflow"":rules"form[item.fieldName…

vue naive ui 按钮绑定按键

使用vue (naive ui) 绑定Enter 按键 知识点: 按键绑定Button全局挂载使得message,notification, dialog, loadingBar 等NaiveUI 生效UMD方式使用vue 与 naive ui将vue默认的 分隔符大括号 替换 为 [[ ]] <!DOCTYPE html> <html lang"en"> <head>…

二叉树oj

文章目录 1. 单值二叉树 2. 检查两颗树是否相同。 3. 对称二叉树。 4. 二叉树的前序遍历。 5. 另一颗树的子树。 6.二叉树的构建及遍历。 7.判断一颗二叉树是否是平衡二叉树。 8.翻转二叉树。 文章内容 1. 单值二叉树 力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱…