MySQL数据库(一):数据库介绍与安装

news2024/11/19 11:16:32

        在嵌入式开发中,数据库的重要性体现在高效的数据存储和管理、数据持久化、复杂查询和处理、数据同步和共享、安全性和可扩展性。常见嵌入式数据库包括SQLite、MySQL、LevelDB等,应用于智能家居、工业控制、车载系统和物联网设备,提升了系统功能和开发效率。这个专栏我们共同来学习MySQL数据库。

目录

一、数据库介绍

1.1  数据库概念

 1.1.1 通俗理解  

1.1.2网络通信的角度理解

1.1.3  形象的理解数据库

1.2 数据库分类

 1.2.1 关系型数据库

1.2.2 非关系型数据库(nosql)

二、mysql安装及设置

2.1 安装mysql

2.2  用户管理

2.3 用户授权

2.4 删除用户

2.5 数据库服务启动停止

2.5.1 检查服务器状态

2.5.2 数据库重启|停止|启动

2.5.3 连接数据库

2.6 配置文件位置


一、数据库介绍

1.1  数据库概念

 1.1.1 通俗理解  

         数据库 :它就是存放数据的仓库,实际上它就是一个存数据的文件 ,并且是可以持久化存储的,是存在磁盘上的,但这个文件不能由我们直接操作,因此又提供了一个数据库管理系统,因此,我们平时所说的数据库既包含了存储数据的文件,又包含了一个管理和操作这个文件的一个系统,这个系统称之为数据库管理系统,因此,我们平时说的数据库是存放数据的文件和数据库管理系统之和, 数据库是一个按数据结构来存储和管理数据的计算机软件系统。数据库管理系统是数据库的核心组成部分,主要完成对数据库的操作与管理功能,例如实现数据的存储,查询,修改,删除,及数据库用户的管理,权限管理等。

1.1.2网络通信的角度理解

       数据库是一个c/s结构,包含服务器端和客户端,我们在安装的时候(apt install mysql-server)安装的是服务器端,其实它自己默认也会安装客户端,目前的数据库都是CS结构,数据库的服务器端和客户端是通过tcp连接的,mysql的端口是3306。(面试问题)IP地址根据部署来决定。如下图所示:

1.1.3  形象的理解数据库

        我们可以把mysql可以理解为一个大仓库,里面的一个个小仓库是存放数据的,但数据在小仓库实际是放在表(货架)里面的,每个小数据库里的表(货架)可能是一个也可能有许多,根据实际要存放的数据来看。因此,我们在需要存放数据的时候,首先登陆数据库(用户名和密码),然后创建一个数据库,将数据库存在在创建的数据库的表里面的。因此,存在一个操作叫做创建数据库和创建表。mysql里面有用户管理模块,可以创建用户,修改密码,mysql的管理员是:root,这个只是跟我们linux系统管理员名相同,不是同一个。如下图所示:

       mysql数据库是一种C/S模型(即客户端和服务端模型),客户单通过用户名,密码登录连接服务器。连接成功后才可以进行数据库的操作(增删改查)。如下图:

  1. RDBMS : 关系数据库管理系统(Relational Database Management System)。
  2. SQL : 结构化查询语言(Structured Query Language).

1.2 数据库分类

 1.2.1 关系型数据库

        指采用了关系模型来组织数据的数据库,关系模型就是指二维表格模型,每一列的数据属性都相同 。而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。 关系型数据库核心元素:数据行(一条记录),数据列(字段), 数据表(数据行的集合),数据库(数据表的集合)

关系型数据库产品: oracle , mysql, sqlite ,DB2, Microsoft Sql Server

1.2.2 非关系型数据库(nosql)

        指非关系型的,分布式的,且一般不保证遵循ACID原则的数据存储系统。非关系型数据库以键值对存储,且结构不固定。(ACID,指原子性,一致性,隔离性,持久性).。

非关系型数据库产品: memcache , redis , mongodb, hbase

二、mysql安装及设置

    这里介绍ubuntu发行版本上使用apt命令安装的步骤。不同发行版本安装方法有所不同。

2.1 安装mysql

       安装前首先切换到管理员身份:sudo su ,然后再执行 apt install mysql-server 安装。

首次登录需要以Linux系统管理员身份运行mysql客户端,以mysql管理员root的身份登录。如下所示:

2.2  用户管理

      查看当前数据库的所有用户信息:

      

       在创建用户之前,我们先修改mysql管理员root的密码,如下所示:

 注意:

       远程连接mysql数据库,必须要在数据库所在的服务器创建远程登陆的用户root账号,否则远程无法连接数据库!!因此,创建用户的时候决定了是该用户本地登录还是远程登录!!!因此,用户可以同名,但是它们的登录方式不同。如下所示:

         这两个root是不一样的,一个是本地登录,一个是远程登陆,如果你设置的两个密码不一样,你要是用同一个密码连接,绝对有一个连不上!localhost 本地登录,% 远程登陆

创建用户需要指定该用户为本地登录还是远程登陆。

       然后退出数据库,执行:exit或者quit。 普通的Linux用户身份,客户端以mysql管理员身份连接数据库如下:

此时,mysql的管理员身份就正式修改成功了!当然,我们也可以创建其他mysql普通用户,如下所示:

当然,我们也可以创建远程登陆的stu1用户,这样就可以在远程使用这个用户来连接我们的mysql数据库服务器,如下所示:

2.3 用户授权

     在我们创建一个用户后,就需要授权用户对哪些数据库的哪些表可以进行操作,就好比工厂招到工人,指定他负责哪一块区域,这就是用户授权。示例如下

2.4 删除用户

2.5 数据库服务启动停止

2.5.1 检查服务器状态

       检查数据库的状态,Linux普通用户和管理员用户都可以查看,命令如下:

2.5.2 数据库重启|停止|启动

     这几个操作都必须需要在Linux系统下的管理员身份运行,命令如下:

2.5.3 连接数据库

      连接数据库,就是连接数据库服务器,可以以数据库所在的服务器进行本地连接,也可以远程连接命令如下:

数据库也是服务器和客户端CS结构,但它与普通的服务器客户端连接存在区别:

       它与普通的服务器客户端连接区别就在于,数据库在远程连接的时候,必须要在数据库所在的服务器端创建远程连接用户,也就可以理解将这个用户存在数据库中,这样它才会认可这个用户,在登陆连接的时候,输入密码才认可,才会连接成功,这样设计是为了保证数据库的安全。而一般的服务器客户端不需要,只需要指定IP地址和端口就能连接。

2.6 配置文件位置

       配置文件在如下位置,需要修改可以用vi打开更改

至此,数据库第一节就已经介绍完毕,感谢大家的阅读,更多精彩内容见后期,下期再见!

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

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

相关文章

并发编程理论基础——管程(并发编程的万能钥匙)(七)

什么是管程 Java采用了管程技术,synchronized关键字及wait()、notify()、notifyAll()三个方法都是管程的组成部分管程和信号量是等价的,管程和信号量之间可以互相实现英文名:Monitor 直译为监视器管程指的是管理共享变量以及对共享变量的操作…

C#高级知识

注册表技术 注册表是一个庞大的数据库系统,它记录了用户安装在计算机上的软件、硬件信息和每一个程序的相互关系。注册表中存放着很多参数,直接控制整个系统的启动、硬件驱动程序的装载以及应用程序的运行Windows注册表包含Windows安装以及已安装软件和…

物联网开发系列(一)·阿里云平台产品的创建以及设备的添加

目录 1. 物联网概述 2. 消息通讯流程 3. 创建产品与设备 3.1 登陆阿里云平台 3.2 新建产品 3.3 添加设备 1. 物联网概述 物联网(Internet of Things,简称 IoT)是指通过互联网连接各种物理设备和物体,使它们能够进行数…

轻量级的文档管理系统Teedy

什么是 Teedy ? Teedy 是一个轻量级的文档管理系统,具有您可以从昂贵的大型解决方案中获得的所有功能,但仍然易于使用。 软件功能特点: 响应式用户界面光学字符识别LDAP 身份验证(新功能!)支持…

Sublime Text for Mac v4.0 【注册汉化版】代码编辑器(保姆级教程,简单易懂,轻松上手)

Mac分享吧 文章目录 效果一、下载软件二、开始安装1、Sublime Text 安装出现“软件已损坏,无法打开。要移到废纸篓”问题,解决办法: 2、汉化补丁安装3、输入注册码4、查询使用期限 安装完成!!! 效果 一、下…

48岁前TVB力捧花旦嫁香港区议员急流勇退诞4女,跻身名媛圈。

多年来,48岁的杨张新悦(前名张燊悦)的皮肤、发质及身形都保养得宜,令人羡慕不已,日前她更公开多张性感内衣照,不输妙龄少女! 杨张新悦在照片中大晒纤腰,有网民留言:「四十…

揭开手机版淘宝死店采集器的秘密!

自从手机版淘宝死淘死店小桃采集器问世以来,它就成为了众多网友关注的焦点。这个神秘的项目,让人们在感叹科技发展的同时,也不禁好奇它究竟能带给我们怎样的惊喜。那么,这个看似神奇的项目到底是怎么回事呢?让我们一起…

力扣141A

文章目录 1. 题目链接2. 题目代码3. 题目总结4. 代码分析 1. 题目链接 Amusing Joke 2. 题目代码 #include<iostream> #include<string> using namespace std;int letterOfInt[30]; int letterAtDoorOfInt[30];int main(){string guestName;string hostName;strin…

网络分层之7层讲解

网络分层 网络分层就是将网络节点所要完成的数据的发送或转发、打包或拆包&#xff0c;控制信息的加载或拆出等工作&#xff0c;分别由不同的硬件和软件模块去完成。 一、物 理 层(Physical Layer) 要传递信息就要利用一些物理媒体&#xff0c;如双纽线、同轴电缆等&#xff…

告别繁琐!一键互换新旧文件夹名,高效批量改名神器助您轻松管理文件库

在日常工作中&#xff0c;我们经常需要对文件夹进行命名和重命名操作。然而&#xff0c;当面对大量需要互换新旧名称的文件夹时&#xff0c;传统的手动操作不仅效率低下&#xff0c;还容易出错。为了解决这一难题&#xff0c;我们特别推出了一款高效、便捷的文件夹批量改名工具…

第3章 小功能大用处-Bitmaps、HyperLogLog、GEO

1.Bitmaps 1.1数据结构模型 现代计算机用二进制&#xff08;位&#xff09;作为信息的基础单位&#xff0c;1个字节等于8位&#xff0c;例 如“big”字符串是由3个字节组成&#xff0c;但实际在计算机存储时将其用二进制表 示&#xff0c;“big”分别对应的ASCII码分别是98、10…

VMware ESXi 8.0U2c macOS Unlocker OEM BIOS Huawei (华为) FusionServer 定制版

VMware ESXi 8.0U2c macOS Unlocker & OEM BIOS Huawei (华为) FusionServer 定制版 ESXi 8.0U2 标准版&#xff0c;Dell (戴尔)、HPE (慧与)、Lenovo (联想)、Inspur (浪潮)、Cisco (思科)、Hitachi (日立)、Fujitsu (富士通)、NEC (日电)、Huawei (华为)、xFusion (超聚…

HTML(16)——边距问题

清楚默认样式 很多标签都有默认的样式&#xff0c;往往我们不需要这些样式&#xff0c;就需要清楚默认样式 写法&#xff1a; 用通配符选择器&#xff0c;选择所有标签&#xff0c;清除所有内外边距选中所有的选择器清楚 *{ margin:0; padding:0; } 盒子模型——元素溢出 作…

OpenCV颜色检测

OpenCV颜色检测 前言策略分析根据颜色检测目标对象相关链接 前言 绿幕技术是一种经典的视频编辑技术&#xff0c;可以用于将人物置于不同的背景中。例如在电影制作中&#xff0c;技术的关键在于演员不能身着特定颜色的衣服(比如绿色)&#xff0c;站在只有绿色的背景前。然后&a…

数据库原理与安全复习笔记(未完待续)

1 概念 产生与发展&#xff1a;人工管理阶段 → \to → 文件系统阶段 → \to → 数据库系统阶段。 数据库系统特点&#xff1a;数据的管理者&#xff08;DBMS&#xff09;&#xff1b;数据结构化&#xff1b;数据共享性高&#xff0c;冗余度低&#xff0c;易于扩充&#xff…

【Linux系列】tree 命令的实用指南

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

前端:Nuxt3 + Vuetify3 + Element Plus + 添加常用插件

想要开发一个网站&#xff0c;并且支持SEO搜索&#xff0c;当然离不开我们的 Nuxt &#xff0c;那通过本篇文章让我们一起了解一下。如果构建一个Nuxt项目 安装 Nuxt3&#xff0c;创建项目 安装nuxt3&#xff0c; 需要node v18.10.0&#xff0c;大家记得查看自己的node版本。…

[保姆级教程]uniapp小程序获取右上角胶囊位置信息

文章目录 导文使用uni.getMenuButtonBoundingClientRect();方法实现完整案例 隐藏默认导航栏&#xff1a;全局隐藏当前页面隐藏 导文 uniapp小程序获取右上角胶囊位置信息 使用uni.getMenuButtonBoundingClientRect();方法实现 <script>const menuButtonInfo uni.getMe…

校园设施物联网信息化改造

随着物联网技术的发展越来越成熟&#xff0c;它不断地与人们的日常生活和工作深入融合&#xff0c;推动着社会的进步。其中物联网系统集成在高校实践课程中可以应用到许多项目&#xff0c;如环境气象检测、花卉种植信息化监管、水质信息化监管、校园设施物联网信息化改造、停车…