数据库浅识及MySQL的二进制安装
-
数据库基础概念与MySQL二进制安装与初始化
-
使用数据库的必要性
-
数据库可以结构化储存大量数据信息,方便用户进行有效的检索访问
-
有效的保持数据信息的一致性,完整性,降低数据冗余
-
可以满足应用的共享和安全方面的要求
-
-
数据库基本概念
-
数据
-
描述事物符号的记录称为数据,
-
在数据库中以“记录“的形式按照统一的格式进行存储。
-
一条记录
-
-
-
-
表
-
存放数据的东西
-
每张表存放的数据都必须是相同属性
-
猪和石头不能在同一张表中
-
-
-
-
数据库
-
表是数据的集合,数据库是多张表的集合
-
-
数据库管理系统(DBMS)
-
从软件的层面来说
-
例如mysql ,Oracle都是数据库管理系统
-
具备的功能
-
数据库的建立与维护功能
-
建立数据库结构和数据的录入与转换,数据库的转储与恢复,数据库的重组与性能监视等。
-
-
数据定义功能
-
定义全局数据结构,局部逻辑数据结构,储存结构,保密模式,信息格式等。确保数据正确,有效与相容。
-
-
数据操纵功能
-
数据查询统计
-
数据更新
-
-
数据库的运行管理功能
-
并发控制
-
存取控制
-
数据库内部维护等功能
-
-
通信功能
-
与其他的软件的通信
-
-
-
-
-
-
数据库系统
-
一个人-机系统,由各种各样的组件构成,数据库管理系统也只是其中一项·。
-
-
E-R图(实体-关系图)
-

-
方框:实体
-
菱形:关系
-
椭圆:实体属性
-
-
-
为了确保数据库的准确性,所以由”完整性约束“
-
实体完整性
-
要求记录在主键上不能有空值
-
主键:不重复性决定了唯一性
-
在一个实体中主键只能有一个
-
-
外键:其它实体中的主键
-
实体可以通过主键,外键来建立联系
-
-
-
域完整性(列完整性)
-
指定一个数据集对某一个列是否有效或者确定是否允许空值。
-
例如定义性别字段只能取值为男或者女,不能是其他无效值。
-
确保列(属性)录入的数据的正确性。
-
-
-
-
引用完整性
-
要求调用其它实体时,必须确保引用的实体的正确性。
-
如果两个表之间相互关联,那么不允许引用不存在的记录
-
-
-
用户自定义完整性
-
类似于身份证,自己去规定各种属性(如数据类型,长度等。)
-
-
-
-
存储引擎
-
数据库的核心
-
-
-
数据库发展历史
-
1960年往后初具雏形,
-
第一代,以层次模型和网状模型为主
-
第二代,以关系模型为主
-
第三代,以面向对象的模型为主,关系-对象模型。
-
-
非关系数据库(nosql)
-
例如储存日志信息
-
”键-值“对
-
-
代表产品
-
redis
-
mongodb
-
-
基于内存
-
读写速度快,断电没,适合高速处理各种大量数据
-
通过内存数据持久化,快照机制,追加机制,集群,来解决断电没的缺点。
-
-
优点
-
高并发读写
-
高存储效率
-
高扩展
-
高可用
-
-
-
关系数据库
-
基于硬盘,设置缓冲区,异步储存数据
-
读写速度
-
寄存器,缓存级,内存,固态,硬盘
-
-
基本结构
-
通常以二维表的形式储存数据
-
数据表中的行被称为记录或者元组
-
数据表中的列被称为属性或者字段
-
主键
-
数据表中具有唯一性的列的值
-
有且只有一个
-
-
primary key
-
键:关键字
-
-
外键
-
其他表的主键
-
-
-
-
-
mysql部署调试
-
MySQL优点
-
开源免费,跨平台
-
多线程,多用户
-
高性能,高可靠
-
基于c/s架构
-
-
部署
-
安装前奏
-
检测是否安装Mariadb如果有将其卸载
-
添加策略或关闭防火墙,临时并永久关闭内核安全机制。
-
安装依赖环境
-
gcc
-
GNU C语言 编译器
-
-
libaio
-
(async)异步 (i/o)输入输出(lib)库
-
-
-
创建程序用户
-
useradd -M -s /sbin/nologin mysql
-
-
-
安装
-
解压并移动重命名到常用位置/usr/local/mysql
-
创建data目录并更改属主属组
-
移动到bin目录下执行mysqld脚本进行初始化
-
./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
-
再次初始化需要删除data目录。需谨慎
-
记录下初始化后的临时密码
-
-
-
-
调试
-
设定配置文件
-
[client]
-
socket=/usr/local/mysql/data/mysql.sock
-
-
-
[mysqld]
-
socket=/usr/local/mysql/data/mysql.sock
-
bind-address = 0.0.0.0
-
监听所有网卡的IP地址,并且需要防火墙也允许
-
-
port = 3306
-
监听端口
-
-
skip-name-resolve
-
跳过域名解析
-
-
basedir=/usr/local/mysql
-
基础目录
-
-
datadir=/usr/local/mysql/data
-
数据目录
-
-
max_connections=2048
-
最大连接数量
-
-
character-set-server=utf8
-
默认字符集
-
-
default-storage-engine=INNODB
-
默认储存引擎
-
-
lower_case_table_names=1
-
启用大小写不敏感
-
-
max_allowed_packet=16M
-
最大sql数据的大小
-
-
忘记密码的办法
-
skip-grant-tables
-
跳过权限表使用空密码登录
-
进入MySQL系统修改完毕后再把该语句取消
-
-
-
-
-
[mysqld_safe]
-
log-error=/usr/local/mysql/data/error.log
-
状态日志的位置,在初始化时可以将其调到mysqld中,避免忘记临时密码,事后要及时修改密码。
-
-
#pid-file=/var/run/mariadb/mariadb.pid
-
-
-
设置为全局命令
-
软链接等多种方式
-
-
设置为systemd的管理
-
[Unit] Description=mysqld After=network.target [Service] Type=forking ExecStart=/etc/rc.d/init.d/mysqld start ExecReload=/etc/rc.d/init.d/mysqld reload ExecStop=/etc/rc.d/init.d/mysqld stop PrivateTmp=true [Install] WantedBy=multi-user.target
-
privateTmp
-
启用私有临时目录,避免数据信息泄露的风险
-
-
-
注意systemctl与service不能混用
-
-
-
进入数据库进行测试看是否成功
-
-
-
相关文章:
数据库浅识及MySQL的二进制安装
数据库基础概念与MySQL二进制安装与初始化 使用数据库的必要性 数据库可以结构化储存大量数据信息,方便用户进行有效的检索访问 有效的保持数据信息的一致性,完整性,降低数据冗余 可以满足应用的共享和安全方面的要求 数据库基本概念 数据…...
机器学习之数学基础(七)~过拟合(over-fitting)和欠拟合(under-fitting)
目录 1. 过拟合与欠拟合 1.1 Preliminary concept 1.2 过拟合 over-fitting 1.3 欠拟合 under-fitting 1.4 案例解析:黑天鹅 1. 过拟合与欠拟合 1.1 Preliminary concept 误差 经验误差:模型对训练集数据的误差。泛化误差:模型对测试…...
⭐最新版!SpringBoot正确集成PageHelper姿势,不再被误导!
GGBond🔈 CSDN的朋友们大家好哇,我是新来的Java练习生 CodeCodeBond! 什么是PageHelper? 这里给不知道的人儿说明一下~~ 知道的xdm可以跳过了! PageHelper顾名思义是一个 页面 帮手。也就是分页查询的一个好用的工具…...
解决:Xshell通过SSH协议连接Ubuntu服务器报“服务器发送了一个意外的数据包,received:3,expected:20”
下图所示: 日志也基本看不出来问题在哪,只是说断开了连接大概是验证失败。有幸在某论坛评论区找到了原因,是因为我的xshell版本太低了而服务器的ssh版本太高,高版本的ssh默认屏蔽了一部分不太安全的算法导致建立连接的时候验证失败…...
[学习笔记] 禹神:一小时快速上手Electron笔记,附代码
课程地址 禹神:一小时快速上手Electron,前端Electron开发教程_哔哩哔哩_bilibili 笔记地址 https://github.com/sui5yue6/my-electron-app 进程通信 桌面软件 跨平台的桌面应用程序 chromium nodejs native api 流程模型 main主进程 .js文件 node…...
Java stream操作流常用的方式
在Java中,Stream操作流是Java 8新引入的一个功能,它提供了很多强大的操作,方便我们进行集合的处理和操作。常用的Stream操作方式有: 1.过滤:使用filter()方法可以过滤掉集合中不符合条件的元素。 2.映射:…...
【C#】图形图像编程
实验目标和要求: 掌握C#图形绘制基本概念;掌握C#字体处理;能进行C#图形图像综合设计。 运行效果如下所示: 1.功能说明与核心代码 使用panel为画板,完成以下设计内容: 使用pen绘制基础图形;使…...
埃特巴什码加解密小程序
埃特巴什码加解密小程序 这几天在看CTF相关的课程,涉及到古典密码学和近代密码学还有现代密码学。 简单替换密码 Atbash Cipher 埃特巴什码(Atbash Cipher)其实可以视为下面要介绍的简单替换密码的特例,它使用字母表中的最后 一个字母代表第一个字母…...
Golang笔记:使用serial包进行串口通讯
文章目录 目的使用入门总结 目的 串口是非常常用的一种电脑与设备交互的接口。这篇文章将介绍golang中相关功能的使用。 本文使用的包为 :go.bug.st/serial https://pkg.go.dev/go.bug.st/serial https://github.com/bugst/go-serial 另外还有一些常见的包如&…...
EasyExcel 导出批注信息
1. 批注信息 package com.xxx.demo;import lombok.Getter;/*** This class represents the comment information associated with a specific cell in an Excel sheet.* The columnIndex field specifies the column number of the cell, and the comment field stores the te…...
HttpServletRequest・getContentLeng・getContentType区别
getContentLength(): 获取客户端发送到服务器的HTTP请求主体内容的字节数(长度) 如果请求没有正文内容(如GET),或者请求头中没有包含Content-Length字段,则该方法返回 -1 getContentType()&am…...
Matlab|【防骗帖】考虑时空相关性的风电功率预测误差建模与分析
目录 1 主要内容 2 部分程序 3 下载链接 1 主要内容 这个程序《考虑时空相关性的风电功率预测误差建模与分析》画的图片非常漂亮,和原文献基本一致,但是实际上内容并未实现出来,主要就是利用现有的风电预测的数据和结果做了相关的图&#…...
【Android面试八股文】说一说ListView卡顿的原因以及相对应的优化策略
文章目录 一、ListView卡顿的原因1.1 Item没有复用1.2 布局的层级过深1.3 数据绑定逻辑过多1.4 滑动时不必要的图片刷新1.5 频繁的notifyDataSetChanged二、优化策略2.1 使用 ViewHolder 进行视图复用2.2 优化布局结构2.3 优化数据绑定逻辑过多2.4 图片加载优化2.5 避免频繁调用…...
Kotlin 中的内联函数
1 inline 内联函数:消除 Lambda 带来的运行时开销。 举例来说: fun main() {val num1 100val num2 80val result num1AndNum2(num1, num2) { n1, n2 ->n1 n2} }fun num1AndNum2(num1: Int, num2: Int, operation: (Int, Int) -> Int): Int …...
KALI LINUX 开启ssh免登录服务及固定ip及
SSH以进行远程登录 在Kali Linux中启用SSH以进行远程登录,请按照以下步骤操作: 安装SSH服务:sudo apt update sudo apt install openssh-server 已安装可忽略 sudo systemctl start ssh 启动SSH服务 sudo systemctl enable ssh 确保SSH服务设置为开机启动: (可选)如…...
亮数据,一款新的低代码爬虫利器!
在当今数据驱动型时代,数据采集和分析能力算是个人和企业的核心竞争力。然而,手动采集数据耗时费力且效率低下,而且容易被网站封禁。 我之前使用过一个爬虫工具,亮数据(Bright Data) ,是一款低…...
配置OSPF认证(华为)
#交换设备 配置OSPF认证-基于华为路由器 OSPF(开放最短路径优先)是一种内部网关协议(IGP),用于在单一自治系统(AS)内决策路由。OSPF认证功能是路由器中的一项安全措施,它的主要用途…...
关于ip地址的网页无法访问navigator的gpu、媒体、蓝牙等设备的解决方法
在使用threejs的WebGPURenderer渲染器时,发现localhost以及127.0.0.1才能访问到navigator.gpu,直接使用ip会变成undefined,原因是为了用户的隐私安全,只能在安全的上下文中使用,非安全的上下文就会是undefined,安全上下…...
深入理解外观模式(Facade Pattern)及其实际应用
引言 在软件开发中,复杂的系统往往由多个子系统组成,这些子系统之间的交互可能非常复杂。外观模式(Facade Pattern)通过为这些子系统提供一个统一的接口,简化了它们的交互。本篇文章将详细介绍外观模式的概念、应用场…...
为什么永远不会有语言取代 C/C++?
每个 CPU 都带有一种称为 ISA(指令集架构)汇编的电路语言。ISA 程序集是一种硬件语言,由基本数据操作、数学计算和结构化编程(即 jmp)的操作组成。但是,为每个计算需求编写汇编代码无疑是耗时的,…...
轻量级工作流编排引擎:从脚本管理到自动化流程的实践指南
1. 项目概述:从单体脚本到流程编排的进化 如果你和我一样,在数据工程、自动化运维或者机器学习模型训练这些领域摸爬滚打过几年,大概率会遇到一个相似的困境:手头的任务脚本越来越多,它们之间有的有依赖关系࿰…...
从PUMA560到你的项目:手把手教你将经典DH建模流程迁移到自定义机械臂
从PUMA560到自定义机械臂:DH建模实战迁移指南 当机械臂从教科书案例走向真实项目时,最令人头疼的莫过于面对一个全新构型却不知如何下手。本文将以工业界经典的PUMA560为跳板,拆解一套可迁移的DH建模方法论,带您跨越从理论到实践的…...
从零构建个人知识库:Go+React全栈项目RocketNotes实战解析
1. 项目概述:从零到一构建个人知识管理工具最近在整理个人笔记和代码片段时,发现了一个挺有意思的开源项目fynnfluegge/rocketnotes。乍一看这个名字,可能会联想到火箭(Rocket)和笔记(Notes)的结…...
如何快速掌握openpilot:从零到精通的自动驾驶系统终极指南
如何快速掌握openpilot:从零到精通的自动驾驶系统终极指南 【免费下载链接】openpilot openpilot is an operating system for robotics. Currently, it upgrades the driver assistance system on 300 supported cars. 项目地址: https://gitcode.com/GitHub_Tre…...
3分钟掌握猫抓扩展:轻松捕获网页视频的终极秘籍
3分钟掌握猫抓扩展:轻松捕获网页视频的终极秘籍 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 你是否曾经遇到过这样的情况࿱…...
基于Sovereign-MCP-Servers构建私有AI工具链:从协议原理到Docker化部署
1. 项目概述与核心价值最近在折腾AI应用开发,特别是想给Claude、Cursor这类工具加上“联网”和“执行”能力时,绕不开一个概念:MCP(Model Context Protocol)。简单说,MCP就是一套标准协议,它能让…...
树莓派扩展板EYESPI Pi Beret:简化硬件连接,加速原型开发
1. 项目概述:为什么我们需要EYESPI Pi Beret?玩树莓派的朋友,尤其是喜欢捣鼓屏幕和传感器的,肯定都经历过那个阶段:面对一堆杜邦线,对照着屏幕驱动板的引脚定义,一个个数着树莓派的GPIO针脚&…...
湿版摄影×AI生成革命:为什么93%的MJ用户调不出真实碘化银斑痕?——资深暗房师+AI训练师双视角深度拆解
更多请点击: https://intelliparadigm.com 第一章:湿版摄影AI生成革命:为什么93%的MJ用户调不出真实碘化银斑痕?——资深暗房师AI训练师双视角深度拆解 湿版火棉胶摄影术诞生于1851年,其不可复制的物理噪点——由碘化…...
基于树莓派与QT Py的本地化物联网红外遥控器DIY指南
1. 项目概述与核心价值想没想过,把家里那堆遥控器——电视的、机顶盒的、空调的、音响的——统统集成到一个你手机能打开的网页里?而且这个控制中心完全在你家局域网里运行,不依赖任何云服务,不用担心厂商倒闭后设备变砖。今天分享…...
【最新v2.7.1 版本安装包】OpenClaw 小白入门必看,零基础无需命令零代码保姆级教学
OpenClaw v2.7.1 一键安装部署教程|可视化傻瓜式搭建 ✨适配系统:Windows10/11 64 位 ✨当前版本:v2.7.1 版本(虾壳云版) ✨安装包大小:58.7MB 【点击下载最新安装包】https://xiake.yun/api/download/…...

