简单详细的MySQL数据库结构及yum和通用二进制安装mysql的方法

news2025/1/10 8:53:20

目录

  • mysql体系结构
  • mysql的安装方法
    • 一,yum安装
      • 1,首先下载一个网络源仓库:
      • 2,然后安装 mysql-community-server
      • 3,启动mysqld 服务
      • 4,然后登录数据库
      • 5,初次登录要设置密码,而且不能太简单
    • 二,通用二进制安装mysql
      • 1,网络获取到通用二进制的压缩包
      • 2,创建mysql用户及组
      • 3,解压
      • 4,创建软链接,方便以后升级和操作
      • 5,初始化数据库
      • 6,提供配置文件和服务启动脚本
      • 7,添加 mysql 服务
      • 8,起动mysql,并且配置环境变量
      • 9,初次登录数据库
      • 10,设置改密码

mysql体系结构

mysql由SQL接口,解析器,优化器,缓存,存储引擎等组成。
SQL interface:接收用户命令,并且返回结果,如 select * from 就是调用了SQL 接口的
解析器(Parser): sql语句命令传递到解析器后会进行命令解析以及处理。
优化器(Optimizer): 语句在查询执行之前会进行语句的优化
缓存(Cache&Buffer:): 如果查询的缓存中存在命中的结果就会直接在缓存中拿出数据
存储引擎(Engine):存储引擎是mysql中具体与文件打交道的子系统
Connectors(连接器):不同的语言与mysql的交互连接器
Connectors pool(连接池): 管理缓冲用户连接,管理线程处理等缓存需求。
在这里插入图片描述

mysql的安装方法

一,yum安装

环境要求: Centos 7 版本的操作系统
这里安装 mysql 5.7 版本为例

1,首先下载一个网络源仓库:

yum install http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

然后会在 //etc/yum.repos.d/ 目录下生成一个仓库:

mysql-community.repo

2,然后安装 mysql-community-server

yum	mysql-community-server

等待安装完成。

3,启动mysqld 服务

systemctl start mysqld
查询临时登录密码
awk '/temporary password/ {print $NF}' /var/log/mysqld.log 

4,然后登录数据库

mysql -uroot -p密码

5,初次登录要设置密码,而且不能太简单

修改密码
alter user root@localhost identified by 'RedHat@123';

6,这个时候yum安装方式就装好了

二,通用二进制安装mysql

通用二进制安装mysql是比较重要的,通常在生产环境中使用这样的方法安装。

通用二进制安装步骤

1,网络获取到通用二进制的压缩包

可以参考以下链接获取二进制包,

https://downloads.mysql.com/archives/community/ 

我获取的二进制包为:

mysql-5.7.14-linux-glibc2.5-x86_64.tar

2,创建mysql用户及组

创建用户及用户组的原因大概是保证mysql的安全以及独立性,mysql 服务的权限给定mysql用户和组后,mysql即使被黑了也只能获取到mysql 用户的权限,而不是默认root权限,而且影响不到其他用户的文件等。

创建mysql组
groupadd -r mysql
创建mysql用户,-r 为系统用户,-g为属组,-c为描述信息 , -s 指定shell,/bin/false 是最严格的禁止login选项,该用户不能登录系统以及不会有任何提示
 useradd mysql -r -g mysql -c "MySQL Server" -s /bin/false

3,解压

将解压文件放到: /usr/local 下

tar xf mysql-5.7.14-linux-glibc2.5-x86_64.tar -C /usr/local
等待解压

解压后发现 目标目录中有以下2个包:

mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz
mysql-test-5.7.14-linux-glibc2.5-x86_64.tar.gz

再解压以下文件到 /usr/local/

tar -xf /usr/local/mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz -C /usr/local/

解压后得到以下包:

mysql-5.7.14-linux-glibc2.5-x86_64

4,创建软链接,方便以后升级和操作

将最后解压出来这个包加上软链接

	-s 创建软链接    -v 打印出每个链接文件的名字(详细信息)。mysql链接了 mysql-5.7.14-linux-glibc2.5-x86_64 
 ln -sv /usr/local/mysql-5.7.14-linux-glibc2.5-x86_64 /usr/local/mysql

5,初始化数据库

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data

执行成功了会生成一个随机的初始密码:7%Lryrrh487f (各不相同)

6,提供配置文件和服务启动脚本

将/usr/local/mysql/support-files/my-default.cnf 中配置文件的样例复制到 /etc/my.cnf

 cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

并且在 /etc/my.cnf 中 的 [mysqld] 中写入:

basedir = /usr/local/mysql
datadir = /usr/local/mysql/data

7,添加 mysql 服务

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
添加系统服务,并设置开机自启动
 chkconfig --add mysqld
 chkconfig mysqld on

8,起动mysql,并且配置环境变量

 /usr/local/mysql/bin/mysqld_safe --user=mysql &

配置环境变量:
vim /etc/profile.d/mysql.sh    写入以下。
export PATH=/usr/local/mysql/bin:$PATH

然后刷新:

source /etc/profile.d/mysql.sh

9,初次登录数据库

mysql -uroot -p

登录密码是之前生成那个

10,设置改密码

初次登录进去了操作不了什么,需要先改密码

设置本地 root 密码为123
alter user root@localhost identified by '123';

然后退出,就可以用新密码进入了

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

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

相关文章

小型电子声光礼花器电子烟花爆竹电路设计

节日和庆典时燃放礼花,其绚丽缤纷的图案,热烈的爆炸声、欢乐的气氛,能给人们留下美好的印象,但有一定的烟尘污染和爆炸危险隐患。本电路可以模拟礼花燃放装置,达到声型兼备的效果,给人们在安全、环保的环境…

redis rehash

dict结构 dictEntry即键值对,每个桶就是dictEntry连接的链表 typedef struct dictEntry {void *key;union {void *val; // 自定义类型uint64_t u64;int64_t s64;double d;} v;struct dictEntry *next; } dictEntry;数据真正指向的地方 typedef struct dictht {di…

京东网站登录二维码显示不出来

环境: 360急速浏览器 Win10专业版 问题描述: 京东网站登录二维码显示不出来 解决方案: 1.打开安全卫士 2.功能大全找到断网急救箱 3.全面诊断一下有问题修复一下,重启浏览器解决

数字迷宫:探秘统计位数为偶数的奇妙世界

本篇博客会讲解力扣“1295. 统计位数为偶数的数字”的解题思路,这是题目链接。 统计位数是偶数的数据个数,关键在于如何统计一个整数的位数。方法是:对于一个整数n,每次/10,都会缩小一位,所以一直进行/10操…

【爬虫】AOI

目前几个大厂,高德百度腾讯,都支持POI爬取,而AOI是需要自己找接口的。 换言之,爬虫需谨慎 1 百度AOI 参考链接是: 这两个链接是选定范围爬取范围内选定类别的AOI 黑科技 | 百度地图抓取地块功能(上&#x…

DeepSpeed-Chat 打造类ChatGPT全流程 笔记二之监督指令微调

文章目录 系列文章0x0. 前言0x1. 🐕 Supervised finetuning (SFT) 教程翻译🏃 如何训练模型🏃 如何对SFT checkpoint进行评测?💁 模型和数据☀️来自OPT-1.3B及其SFT变体(使用不同微调数据)的提示示例☀️…

关于layui实现按钮点击添加行的功能

关于layui实现按钮点击添加行的功能 实现效果 代码实现 <!DOCTYPE html> <html lang"zh" xmlns:th"http://www.thymeleaf.org"> <head><meta charset"UTF-8"><title>Title</title><link rel"styl…

帅气的头像-InsCode Stable Diffusion 美图活动一期

1.运行地址 Stable Diffusion 模型在线使用地址&#xff1a; https://inscode.csdn.net/inscode/Stable-Diffusion 界面截图&#xff1a; 2.模型版本及相关配置 模型&#xff1a;chilloutmix-Ni.safetensor [7234b76e42] 采样迭代步数&#xff08;steps&#xff09;: 30 采样…

QtDesigner的使用

QtDesigner的使用 1、快速入门2、布局管理 1、快速入门 主窗口 菜单栏、工具栏、状态栏 快捷预览方式&#xff0c;工具箱 对象查看器 属性编辑器 英文名作用objectName控件对象名称geometry相对坐标系sizePolicy控件大小策略minnimumSize最小宽度、高度maximumSize最大宽度…

基于jsp+Servlet+mysql学生信息管理系统V2.0

基于jspServletmysql学生信息管理系统V2.0 一、系统介绍二、功能展示1.项目骨架2.数据库表3.项目内容4.登陆界面5.学生-学生信息6、学生-修改密码7、管理员-学生管理8、管理员-添加学生9.管理员-修改学生信息10.管理员-班级信息11.管理员-教师信息 四、其它1.其他系统实现五.获…

旅游卡系统旅行社小程序APP

旅游业的不断发展&#xff0c;旅游卡系统、旅行社小程序APP等数字化工具已经成为了旅行社提升业务效率、提高客户体验的重要手段。下面&#xff0c;我们将为您介绍旅游卡系统旅行社小程序APP的相关内容。 一、旅游卡系统 旅游卡系统是一种将旅游门票、优惠券等资源整合…

实时包裹信息同步:WebSocket 在 Mendix 中的应用

场景介绍 在现代物流中&#xff0c;能够实时跟踪包裹信息&#xff0c;尤其是包裹重量&#xff0c;是非常重要的。在这种场景中&#xff0c;我们可以使用称重设备获取包裹的信息&#xff0c;然后实时将这些信息同步给 Mendix 开发的 App&#xff0c;并在 App 的页面上实时显示包…

获取java对象被更新的属性和值

业务场景 更新User信息后&#xff0c;需要收集哪些字段的哪些值被更新了。 思路 比较originUser和newUser&#xff0c;收集值不同的属性以及变化前后的值。 代码实现 public static Map<String, Map<String, Object>> getChange(Object originObject, Object ne…

Java 9 - 模块化系统

定义要导出的模块 package com.lfsun.java9study.mypackage;public class MyClass {public static void sayHello() {System.out.println("Hello from com.lfsun.java9study.mypackage!");}public static void main(String[] args) {System.out.println("test&…

【Linux】LVS负载均衡群集 DR模式

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 LVS负载均衡群集 DR模式 数据包流向分析DR 模式的特点LVS-DR中的ARP问题VIP地址相同导致响应冲突返回报文时源地址使用VIP&#xff0c;导致网关设备的ARP缓存表紊乱 DR模式 L…

Pycharm配置解释器(interpreter)

关于pycharm编译器的解释器&#xff0c;网友朋友的分享 Pycharm配置&#xff08;1&#xff09;——解释器&#xff08;interpreter&#xff09; 详细了解PyCharm支持的4种Python Interpreter和配置方法 对大多数人而言就只需要 分清虚拟解释器和系统解释器&#xff0c;使用虚拟…

关闭Win10的预览窗口

关闭Win10的预览窗口 每次拖拽文件都显示那个黑边的模型一样的东西&#xff0c;通过上面可以关闭该功能。

MBD开发 STM32 外部仿真

要接一个串口&#xff0c;用来设备和simulink的通信 烧录即可 烧录时选择串口

.360勒索病毒的加密数据怎么处理?|.360勒索病毒数据解密恢复

.360勒索病毒是一种恶意软件&#xff0c;它对用户的计算机文件进行加密&#xff0c;并要求支付赎金才能解密恢复数据。这种勒索病毒以其广泛传播和严重破坏性而闻名&#xff0c;给个人用户和企业带来了巨大的困扰和损失。 一家中型制造企业&#xff0c;名为XYZ制造有限公司&…

用科技智造新未来!在线开发平台强力助推数字化发展

在科技智造新时代&#xff0c;科技的力量是无处不见的。运用科技可以创造美好的生活&#xff0c;可以实现数字化发展&#xff0c;帮助企业实现流程化管理。在线开发平台将科技元素注入到平台中&#xff0c;将科技与办公需求相连接&#xff0c;创造高效率办公及流程化发展。 1…