IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> mysql体系结构及四种部署方式 -> 正文阅读

[大数据]mysql体系结构及四种部署方式

作者:token comment

mysql体系结构

在这里插入图片描述
一、连接层
思想
为解决资源的频繁分配-释放所造成的问题,为数据库连接建立一个“缓冲池”。
原理
预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去。
作用
进行身份验证、线程重用,连接限制,检查内存,数据缓存;管理用户的连接,线程处理等需要缓存的需求

查看最大连接数
show variables like '%max_connections%';

二、SQL层
管理服务和工具组件
从备份和恢复的安全性、复制、集群、管理、配置、迁移和元数据等方面管理数据库
sQL接口组件
进行DML、DDL,存储过程、视图、触发器等操作和管理;用户sQL命令接口
解析器组件
验证和解析sQL命令
查询优化器组件
对sQL语句查询进行优化“选取、投影和连接”
缓存和缓冲区
由一系列小缓存组成的。比如表缓存,记录缓存,key缓存,权限缓存等

查看缓存配置情况
show variables like '%query_cache%';

三、插件式存储引擎
MySQL的存储引擎是插件式的。它根据MySQL AB公司提供的文件访问层的一个抽象接口来定制一种文件访问机制,这种访问机制就叫存储引擎
MylSAM
它查询速度快,有较好的索引优化和数据压缩技术。但是它不支持事务。
lnnoDB
它支持事务,并且提供行级的锁定,应用也相当广泛。
BDB
不再从底层支持BDB
Memory
适合存储临时数据
Archive
适合存储历史数据

四、物理文件层
支持的文件类型
EXT3、EXT4、NTFS、NFS
文件内容
数据文件日志文件配置文件其他文件

MySQL安装部署

四种安装Mysql软件的文档

  1. 仓库安装
rpm -i https://repo.mysql.com//mysql80-community-release-el8-4.noarch.rpm
dnf install mysql-server
rpm -qa | grep mysql

systemctl start mysqld
systemctl status mysqld
  1. 本地安装
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.30-1.el8.x86_64.rpm-bundle.tar

tar xvf mysql-8.0.30-1.el8.x86_64.rpm-bundle.tar

dnf localinstall mysql-community-server-8.0.30-1.el8.x86_64.rpm \
mysql-community-client-8.0.30-1.el8.x86_64.rpm \
mysql-community-common-8.0.30-1.el8.x86_64.rpm \
mysql-community-icu-data-files-8.0.30-1.el8.x86_64.rpm  \
mysql-community-client-plugins-8.0.30-1.el8.x86_64.rpm \
mysql-community-libs-8.0.30-1.el8.x86_64.rpm

[root@localhost ~]# systemctl start mysqld
[root@localhost ~]# systemctl status mysqld
  1. 容器安装
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
ll /etc/yum.repos.d/
dnf install docker-ce docker-ce-cli
systemctl start docker
systemctl status docker
docker version
docker run hello-world
docker run mysql
docker ps
docker run --name mysqltest -e MYSQL_ROOT_PASSWORD=123456 -d mysql
docker ps
docker run --name mysqltest2 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
netstat -lntup | grep 3306
docker ps
docker --help

docker exec mysqltest2 /bin/bash
dnf install bash-com*

docker exec -it mysqltest2 /bin/bash
docker ps
docker run --name mysqltest3 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
docker ps
docker run --name mysqltest5 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
docker ps
history 
  1. 源码安装
  2. 卸载数据库软件
dnf remove mysql-server

rpm -e mysql80-community-release

rpm -qa | grep mysql

rm -rf /var/lib/mysql/

rm -rf /var/log/mysql/

2.1 用shell写安装脚本

[root@localhost ~]# cat install_mysql.sh
#!/bin/bash
#author:jzl
#date:2022-9-11
#action:install_mysql
rpm -qa | grep mysql
if [  $? != 0 ]
then
        echo "没有mysql包"
else
        rpm -e mysql80-community-release
        rm -rf /var/lib/mysql/
        rm -rf /var/log/mysql/
        echo "正在卸载mysql"
        echo "正在安装mysql"
fi

wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.30-1.el8.x86_64.rpm-bundle.tar

tar xvf mysql-8.0.30-1.el8.x86_64.rpm-bundle.tar

dnf localinstall mysql-community-server-8.0.30-1.el8.x86_64.rpm \
mysql-community-client-8.0.30-1.el8.x86_64.rpm \
mysql-community-common-8.0.30-1.el8.x86_64.rpm \
mysql-community-icu-data-files-8.0.30-1.el8.x86_64.rpm  \
mysql-community-client-plugins-8.0.30-1.el8.x86_64.rpm \
mysql-community-libs-8.0.30-1.el8.x86_64.rpm

systemctl start mysqld
if [ $? -eq  0 ]
then
        echo "安装成功"
else
        echo "安装失败"
fi

oldpasswd=`grep "password" /var/log/mysqld.log  | awk '{print $NF}'`
newpasswd='Redhat123.'
mysqladmin -uroot -p$oldpasswd password $newpasswd
echo "密码修改成功"
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-09-13 11:22:43  更:2022-09-13 11:26:18 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 10:38:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码