当前位置: 首页 > news >正文

数据库服务体系结构

1. 数据库服务应用配置

服务进行配置有什么作用?

         实现服务运行启动

         实现某些功能

应用配置有三种方式?

        利用编译安装进行配置

        编写配置文件信息 ,.默认的配置文件: /etc/my.cnf

        利用启动命令参数配置信息,mysqld_safe --skip-grant-tables --skip-networking &

#配置文件内容 有[]的部分表示对客户端或者服务端的配置区域
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/data/3306/data
port=3306
socket=/tmp/mysql.sock[client]
socket=/tmp/mysql.sock

 启动数据库服务为什么会有两个进程信息?

一个是 mysqld_safe

一个是 mysqld

知识点补充:数据库服务启动与关闭管理

mysqld_safe   父进程,接受任务信息

mysqld            子进程,处理任务信息,核心

 2. 数据库服务实例创建

1. 在数据库服务运行中,可以存在多实例运行的概念,什么是数据库服务的多实例呢?

一般在一个系统环境中,可以运行多个相同的服务程序信息,并且产生不同的进程和网络端口信息,就可以成为多实例概念。

2. 多实例的作用?

充分利用硬件资源

 2.1 实战多实例

## 1. 环境部署准备
##创建数据目录
mkdir -p /data/330{7..9}/data
chown -R mysql. /data/## 2. 进行不同实例的初始化
##将默认的配置文件改名或者移走
mv /etc/my.cnf /etc/my.cnf.bak
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307/data
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/3308/data
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/3309/data## 3. 编写配置文件
vim /data/3307/data/my.cnf 
[mysql]
socket=/tmp/mysql3307.sock
[mysqld]
user=mysql
port=3307
basedir=/usr/local/mysql
datadir=/data/3307/data
socket=/tmp/mysql3307.sockvim /data/3308/data/my.cnf 
[mysql]
socket=/tmp/mysql3308.sock
[mysqld]
user=mysql
port=3308
basedir=/usr/local/mysql
datadir=/data/3308/data
socket=/tmp/mysql3308.sockvim /data/3309/data/my.cnf 
[mysql]
socket=/tmp/mysql3309.sock
[mysqld]
user=mysql
port=3309
basedir=/usr/local/mysql
datadir=/data/3309/data
socket=/tmp/mysql3309.sockmysqld_safe --defaults-file=/data/3307/data/my.cnf &
mysqld_safe --defaults-file=/data/3308/data/my.cnf &
mysqld_safe --defaults-file=/data/3309/data/my.cnf &## 4. 检查端口是否成功
## 5. 指定套接字文件登录
mysql -S /tmp/mysql3307.sock   ##登录
select @@port;   ##sql语句查看端口

 3. 数据库服务版本升级

实现程序功能升级,升级过程中:不能影响数据信息,不能影响业务使用

实现升级的方法:

        本地升级:单台服务器升级

        迁移升级:多台服务器升级   -- 主从结构

注意事项:

先进行小版本升级,在进行大版本升级

3.1 数据库升级实战(5.6---->5.7) 

## 0. 准备环境
systemctl  start mysql56  ##启动5.6数据库
## 创建测试数据
create database oldboy;
create table stu (name varchar(10),age int,gender char(1));
insert into stu values ('oldboy',20,'m');
select * from stu;## 1. 数据库旧版服务关闭
systemctl stop mysql56.service ## 2. 数据库服务最新程序启动
## 实现挂库信息配置。 然后跳过授权表和网络的方式启动,新程序加载旧数据
vim /etc/my57.cnf
[mysql]
socket=/tmp/mysql.sock
[mysqld]
user=mysql
basedir=/usr/local/mysql57
datadir=/data/3356/data      ##修改为旧版的数据目录
socket=/tmp/mysql.sock##启动新版数据库/usr/local/mysql57/bin/mysqld_safe --defaults-file=/etc/my57.cnf --skip-grant-tables --skip-networking &## 3. 进入数据库查看数据
select * from oldboy.stu;
## 4. 数据库服务升级数据结构
/usr/local/mysql57/bin/mysql_upgrade -S /tmp/mysql.sock --force

3.2 数据库升级实战(5.7------>8.0)

## 1. 数据库最新程序安装
## 2. 旧版数据库服务关闭
systemctl  stop mysql57
## 3. 新版数据库服务启动
## 实现挂库信息配置。 然后跳过授权表和网络的方式启动,新程序加载旧数据
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/data/3356/data      ##旧版本的数据目录
socket=/tmp/mysql.sock## 启动新版数据库
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --skip-grant-tables --skip-networking &## 查看数据是否丢失
mysql
select * from oldboy.stu;

相关文章:

数据库服务体系结构

1. 数据库服务应用配置 服务进行配置有什么作用? 实现服务运行启动 实现某些功能 应用配置有三种方式? 利用编译安装进行配置 编写配置文件信息 ,.默认的配置文件: /etc/my.cnf 利用启动命令参数配置信息,mysqld_safe --skip-grant-tables --…...

vscode项目依赖问题

必读 一定要将前端下拉的项目备份一下,很容易运行导致依赖报错,重新下载 命令 使用幽灵分解器安装 pnpm install 替代 npm install 设置淘宝NPM镜像源 yarn config set registry https://registry.npmmirror.com 查看目前依赖包的版本 npm list ant-d…...

R数据分析:有调节的中介与有中介的调节的整体介绍

单独的有调节的中介或者有中介的调节好多同学还大概能看明白,但是两个东西一起说我发现大部分同学就懵逼了。今天我就尝试将两种方法一起讲讲,重点帮助大家厘清两种方法的异同。 先从整体上看下两者的概念: 有中介的调节首先落脚在调节,调节作用必须是显著的,并且这个调…...

RabbitMQ-消息可靠性以及延迟消息

目录 消息丢失 一、发送者的可靠性 1.1 生产者重试机制 1.2 生产者确认机制 1.3 实现生产者确认 (1)开启生产者确认 (2)定义ReturnCallback (3)定义ConfirmCallback 二、MQ的持久化 2.1 数据持久…...

Hack The Box-Starting Point系列Oopsie

一. 答案 With what kind of tool can intercept web traffic? (什么样的工具可以拦截Web流量?) proxyWhat is the path to the directory on the webserver that returns a login page?(Web服务器上返回登录页面的目录路径是什么?) /cdn-cgi/loginWhat can be modified …...

Linux运维篇-PAM安全模块配置

PAM是什么? PAM(可插入认证模块)是UNIX操作系统上一个实现模块化的身份验证的服务。当程序需要对用户进行身份验证时加载并执行。PAM文件通常位于/etc/pam.d目录中。 而Linux-PAM,是linux可插拔认证模块,是一套可定制…...

麒麟V10系统上安装Oracle

以下是在麒麟V10系统上安装Oracle数据库的详细步骤: 安装前准备 检查系统版本:使用uname -a、cat /etc/os-release等命令检查服务器是麒麟V10系统。 配置固定IP和本地yum源: 挂载麒麟V10的iso文件到/mnt目录,如mount -o loop Ky…...

项目开发实践——基于SpringBoot+Vue3实现的在线考试系统(七)

文章目录 一、题库管理模块实现1、新增题目功能实现1.1 页面设计1.2 前端功能实现1.3 后端功能实现1.4 效果展示2、题目列表功能实现2.1 页面设计2.2 前端功能实现2.3 后端功能实现2.3.1 后端查询题目列表接口实现2.3.2 后端编辑试题接口实现2.4 效果展示二、代码下载一、题库管…...

Elasticsearch:Jira 连接器教程第二部分 - 6 个优化技巧

作者:来自 Elastic Gustavo Llermaly 将 Jira 连接到 Elasticsearch 后,我们现在将回顾最佳实践以升级此部署。 在本系列的第一部分中,我们配置了 Jira 连接器并将对象索引到 Elasticsearch 中。在第二部分中,我们将回顾一些最佳实…...

Vulnhub Earth靶机攻击实战(一)

导语   首先需要我们进入到https://vulnhub.com/entry/the-planets-earth,755/地址去获取Earth靶机,然后导入到VMware中,如下所示。 文章目录 导入虚拟机信息收集路径扫描破解密码反射Shell提权总结导入虚拟机 下载并导入虚拟机,如下所示。 信息收集 首先我们通过arp-sc…...

51单片机——DS18B20温度传感器

由于DS18B20数字温度传感器是单总线接口,所以需要使用51单片机的一个IO口模拟单总线时序与DS18B20通信,将检测的环境温度读取出来 1、DS18B20模块电路 传感器接口的单总线管脚接至单片机P3.7IO口上 2、DS18B20介绍 2.1 DS18B20外观实物图 管脚1为GN…...

HTML5+Canvas实现的鼠标跟随自定义发光线条源码

源码介绍 HTML5Canvas实现的鼠标跟随自定义发光线条特效源码非常炫酷&#xff0c;在黑色的背景中&#xff0c;鼠标滑过即产生彩色变换的发光线条效果&#xff0c;且线条周围散发出火花飞射四溅的粒子光点特效。 效果预览 源码如下 <!DOCTYPE html PUBLIC "-//W3C//D…...

关于jwt和security

JSON Web Token&#xff08;缩写 JWT&#xff09; 目前最流行、最常见的跨域认证解决方案&#xff0c;前端后端都需要会使用的东西-腾讯云开发者社区-腾讯云 SpringBoot整合Security安全框架、控制权限让我们一起来看看Security吧&#xff01;我想每个写项目的人&#xff0c;都…...

统计学习算法——逻辑斯谛回归

内容来自B站Up主&#xff1a;动画讲编程https://www.bilibili.com/video/BV1CR4y1L7RC、风中摇曳的小萝卜https://www.bilibili.com/video/BV17r4y137bW&#xff0c;仅为个人学习所用。 极大似然估计 几率、概率与似然 几率是指某个事件发生的可能性与不发生的可能性之比&am…...

算法(蓝桥杯)贪心算法5——删数问题的解题思路

问题描述 给定一个高精度的正整数 n&#xff08;n≤1000 位&#xff09;&#xff0c;需要删除其中任意 s 个数字&#xff0c;使得剩下的数字按原左右顺序组成一个新的正整数&#xff0c;并且这个新的正整数最小。例如&#xff0c;对于数字 153748&#xff0c;删除 2 个数字后&a…...

数字孪生发展及应用

一、数字孪生的前世今生 &#xff08;一&#xff09;萌芽的种子&#xff1a;概念的首次提出 数字孪生的概念最早可追溯到 20 世纪 60 年代&#xff0c;美国国家航空航天局&#xff08;NASA&#xff09;在阿波罗计划中&#xff0c;为了训练宇航员和指挥控制人员&#xff0c;使用…...

MYSQL对表的增删改查

表的基本操作 创建表create table [if not exists] <tableName> (<columnName> <columnType> [constraints] [comment] , ...<columnName> <columnType> [constraints] [comment] ) ;删除表drop table [if exists] <tableName> ;…...

左神算法基础提升--4

文章目录 树形dp问题Morris遍历 树形dp问题 求解这个问题需要用到我们在基础班上学到的从节点的左子树和右子树上拿信息的方法。 求最大距离主要分为两种情况&#xff1a;1.当前节点参与最大距离的求解&#xff1b;2.当前节点不参与最大距离的求解&#xff1b; 1.当前节点参与最…...

【docker踩坑记录】

docker踩坑记录 踩坑记录(持续更新中.......)docker images 权限问题 踩坑记录(持续更新中…) docker images 权限问题 permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Head "http://%2Fvar%2Frun%2Fdocker.s…...

CloudberryDB(四)并行执行

要查看CloudberryDB & Greenplum数据库的并行度配置&#xff0c;可以使用以下几种方法&#xff1a; ### 方法一&#xff1a;使用SHOW命令 在Greenplum数据库中&#xff0c;可以使用SHOW命令来查看当前的并行度配置。例如&#xff1a; sql SHOW gp_parallel_degree ; SH…...

React Native 导航系统实战(React Navigation)

导航系统实战&#xff08;React Navigation&#xff09; React Navigation 是 React Native 应用中最常用的导航库之一&#xff0c;它提供了多种导航模式&#xff0c;如堆栈导航&#xff08;Stack Navigator&#xff09;、标签导航&#xff08;Tab Navigator&#xff09;和抽屉…...

对WWDC 2025 Keynote 内容的预测

借助我们以往对苹果公司发展路径的深入研究经验&#xff0c;以及大语言模型的分析能力&#xff0c;我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际&#xff0c;我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测&#xff0c;聊作存档。等到明…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

MySQL 8.0 OCP 英文题库解析(十三)

Oracle 为庆祝 MySQL 30 周年&#xff0c;截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始&#xff0c;将英文题库免费公布出来&#xff0c;并进行解析&#xff0c;帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

算法笔记2

1.字符串拼接最好用StringBuilder&#xff0c;不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...

Kafka入门-生产者

生产者 生产者发送流程&#xff1a; 延迟时间为0ms时&#xff0c;也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于&#xff1a;异步发送不需要等待结果&#xff0c;同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...

LLaMA-Factory 微调 Qwen2-VL 进行人脸情感识别(二)

在上一篇文章中,我们详细介绍了如何使用LLaMA-Factory框架对Qwen2-VL大模型进行微调,以实现人脸情感识别的功能。本篇文章将聚焦于微调完成后,如何调用这个模型进行人脸情感识别的具体代码实现,包括详细的步骤和注释。 模型调用步骤 环境准备:确保安装了必要的Python库。…...

C++实现分布式网络通信框架RPC(2)——rpc发布端

有了上篇文章的项目的基本知识的了解&#xff0c;现在我们就开始构建项目。 目录 一、构建工程目录 二、本地服务发布成RPC服务 2.1理解RPC发布 2.2实现 三、Mprpc框架的基础类设计 3.1框架的初始化类 MprpcApplication 代码实现 3.2读取配置文件类 MprpcConfig 代码实现…...

​​企业大模型服务合规指南:深度解析备案与登记制度​​

伴随AI技术的爆炸式发展&#xff0c;尤其是大模型&#xff08;LLM&#xff09;在各行各业的深度应用和整合&#xff0c;企业利用AI技术提升效率、创新服务的步伐不断加快。无论是像DeepSeek这样的前沿技术提供者&#xff0c;还是积极拥抱AI转型的传统企业&#xff0c;在面向公众…...

aardio 自动识别验证码输入

技术尝试 上周在发学习日志时有网友提议“在网页上识别验证码”&#xff0c;于是尝试整合图像识别与网页自动化技术&#xff0c;完成了这套模拟登录流程。核心思路是&#xff1a;截图验证码→OCR识别→自动填充表单→提交并验证结果。 代码在这里 import soImage; import we…...