mysql体系结构及安装部署mysql

news2024/10/7 12:18:12

目录

1.体系结构 

2.安装mysql

1.yum 源安装

2. 第二种安装方式-通用二进制方式

3.mysql改密方式

第一种,知道密码的情况下

第二种,不知道密码


1.体系结构 

MySQL  server
连接层连接池(缓冲池)
SQL层系统管理和控制工具SQL接口。解析器。查询优化组件缓存和缓冲区
存储引擎MylSAM、InnoDB、BDB、MeMory、Archive等
物理文件层NTFS、EXT3、NFS等文件系统;数据、配置、日志、其他文件

MySQL是由SQL接口 、解析器、优化器、缓存、存储引擎组成的

Connectors指的是不同语言中与SQL的交互

Management  Services & Utilities: 系统管理和控制工具

Connection Pool:连接池。管理缓冲用户连接,线程处理等需要缓存的需求

SQL Interface:SQL接口,接受用户的SQL命令,并且返回用户需要查询的结果。比如select from就是调 用SQL Interface

Parser: 解析器。SQL命令传递到解析器的时候会被解析器验证和解析。

Optimizer:查询优化器。SQL语句在查询之前会使用查询优化器对查询进行优化。

Cache和Buffer: 查询缓存。如果查询缓存有命中的查询结果,查询语句就可以直接去查询缓存中取数据.

Engine:存储引擎。存储引擎是MySql中具体的与文件打交道的子系统。

2.安装mysql

1.yum 源安装

第一步   配置yum源,可以手动配置也可以直接下载。

可以手动配置yum源

baseurl指向国内镜像源地址,比如清华、中科大。
                /etc/yum.repos.d/mysql.repo
                
                [mysql]
                name=mysql5.7
                baseurl=http://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/
                gpgcheck=0

自动

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

 2.下载mysql

yum install mysql-community-server -y

 3.启动服务

[root@localhost ~]# systemctl  start mysqld  #启动服务
[root@localhost ~]# systemctl  enable mysqld  #开机自启

[root@localhost ~]# systemctl  status mysqld  #检查状态
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2023-07-05 17:21:14 CST; 9min ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
 Main PID: 1100 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─1100 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

Jul 05 17:21:12 localhost.localdomain systemd[1]: Starting MySQL Server...
Jul 05 17:21:14 localhost.localdomain systemd[1]: Started MySQL Server.

 4.查看临时密码登陆mysql

使用awk从/var/log/mysqld.log这个文件里面过滤密码

[root@localhost ~]# awk '/temporary password/ {print $NF}' /var/log/mysqld.log
e(KoOp30kcwU
[root@localhost ~]#

 5.登陆mysql及改密

[root@localhost ~]# mysql -uroot -p'e(KoOp30kcwU' 

---p和密码不能有空隙,否则将认为是数据库名称
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.42

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>  alter user root@localhost identified by 'Redhat123.';
Query OK, 0 rows affected (0.01 sec)

mysql>

2. 第二种安装方式-通用二进制方式

这种方式适合生产环境

1. 导包到linux中/root目录下

[root@localhost ~]# ll
total 656956
-rw-------. 1 root root      1403 Jul  5 16:39 anaconda-ks.cfg
-rw-r--r--  1 root root 672716800 Jul  5 18:11 mysql-5.7.14-linux-glibc2.5-x86_64.tar
[root@localhost ~]# ll mysql-5.7.14-linux-glibc2.5-x86_64.tar
-rw-r--r-- 1 root root 672716800 Jul  5 18:11 mysql-5.7.14-linux-glibc2.5-x86_64.tar

2.创建用户组
[root@localhost ~]# groupadd -r mysqld
[root@localhost ~]# useradd mysqld -r -g mysqld -c "MySQL Server" -s /bin/false

3.解压
[root@localhost ~]# tar xf mysql-5.7.14-linux-glibc2.5-x86_64.tar  -C /usr/local/
[root@localhost ~]# tar xf /usr/local/mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz -C /usr/local/

4.创建软链接

[root@localhost ~]# ln -sv /usr/local/mysql-5.7.14-linux-glibc2.5-x86_64 /usr/local/mysql
‘/usr/local/mysql’ -> ‘/usr/local/mysql-5.7.14-linux-glibc2.5-x86_64’
5.初始化

[root@localhost ~]# /usr/local/mysql/bin/mysqld --initialize --user=mysqld  --basedir=/usr/local/mysql/--datadir=/usr/local/mysql/data

6.提供配置文件和服务脚本

[root@localhost ~]# cp /usr/local/mysql/support-files/my-default.cnf  /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? yes

7.修改配置文件:在/etc/my.cnf  中的[mysqld]下添加:

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

8.服务脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
 9.添加系统服务,并设置开机自启动
  chkconfig --add mysqld
 chkconfig mysqld on
  10.启动mysql
    /usr/local/mysql/bin/mysqld_safe --user=mysql &
            
 12. 配置环境变量:

 # vim /etc/profile.d/mysql.sh
 export PATH=/usr/local/mysql/bin:$PATH
            
            加载使其生效。

3.mysql改密方式

第一种,知道密码的情况下

知道密码改密
第一种
[root@localhost ~]# mysqladmin -uroot -p password
Enter password:
New password:
Confirm new password:
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
[root@localhost ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.42 MySQL Community Server (GPL)

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>



方法2:
mysql> alter user root@localhost identified by '123';
Query OK, 0 rows affected (0.00 sec)
方法3:
mysql> SET PASSWORD FOR 'root'@'localhost' = '123456';
Query OK, 0 rows affected (0.00 sec)

方法4:
mysql> update mysql.user set authentication_string=password('12345')
	    -> where user="root" and host="localhost";
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 1

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

第二种,不知道密码

跳过权限表的第一种   

1.在配置文件/etc/my.cnf里面添加 skip-grant-tables

 2.重启,然后直接登陆mysql

[root@localhost ~]# systemctl  restart mysqld---重启
[root@localhost ~]# mysql -uroot  -登陆
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.42 MySQL Community Server (GPL)

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> flush privileges;  --刷新权限
Query OK, 0 rows affected (0.01 sec)
mysql>  alter user root@localhost identified by 'Redhat222.';  --修改密码
Query OK, 0 rows affected (0.00 sec)

第二种

重启登陆之后,直接修改,然后刷新权限表

mysql> update mysql.user set authentication_string=password('123456')
            -> where user='root' and host='localhost';
                mysql> flush privileges;

最后删除在/etc/my.cnf的skip-grant-tables

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

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

相关文章

亿级日活业务稳如磐石 华为云发布性能测试服务CodeArts PerfTest

HDC期间可参与华为云PaaS生态抽奖活动,活动链接在文末 计算机软件作为人类逻辑智慧的伟大结晶之一,已经渗透到了人类社会的各个角落。早期的计算机发展对硬件有很强的依赖性,只有少数的个人或者机构才能拥有软件这种“奢侈品”。但随着软件行…

了解和搭建zabbix 6.0(来日方长)

前言: 作为一个运维,需要会使用监控系统查看服务器系统性能、应用服务状态和网站流量指标等,利用监控系统的数据去了解网站上线发布的结果和健康状态。 利用一个优秀的监控软件,我们可以: 通过一个友好的界面进行浏览整个网站所有…

OpenAI呼吁超级智能需要被监管

ChatGPT的创建者OpenAI发出了对超级智能监管的发人深省的呼吁,并与核能的监管进行了类比。在最近的一篇博客文章中,OpenAI强调了人工智能快速发展可能产生的影响以及这个不断变化的领域治理的紧迫性。该公司表示,预计人工智能系统将在未来十年…

你一定要用这个API管理工具,看完你就知道为什么了

以下是经常发生在程序员之间的对话: 小张:你知道为什么程序员不喜欢写文档? 小王:因为代码就是最好的文档啊!谁还需要写那些冗长的说明呢? 小张:那你知道为什么程序员也不喜欢别人不写文档吗…

JAVA POI的excel中包含图片进行读取保存,单张图片,多张图片

JAVA POI的excel中包含图片进行读取保存,单张图片,多张图片 ---------------------------------------------效果---------------------------------------------------------- 1.单张图片 2.多张图片 import java.io.FileInputStream; import java.io.FileOutputStream;…

途乐证券|有色金属板块崛起涨超2%,云南锗业两连板

周三(7月5日),A股三大股指震荡整理。截至上午收盘,上证指数跌幅达0.51%,报3228.68点;深证成指和创业板指跌幅分别为0.53%和0.59%;沪深两市合计成交额5310.1.6亿元,总体来看,两市个股跌多涨少。 …

机器学习25:《数据准备和特征工程-III》采样和分隔

目录 1.采样和分割数据 1.1 抽样简介 1.2 过滤 PII(个人身份信息) 2.数据不平衡 2.1 下采样和增加权重 3.数据分割示例 3.1 随机分割可能不是最好的方法 4.分割数据 5.随机化 5.1 实际考虑 5.2 散列的注意事项 6.参考文献 1.采样和分割数据-…

2023,中国电商重回元老时代

中国的历史上不缺“太上皇”,但“太上皇”再度站到台前的很少。公元1457年,被囚禁在南宫的“太上皇”朱祁镇复位,上演了中国历史上少见的南宫复辟。而危机时刻被推举为皇帝的朱祁钰,后来的庙号是代宗,阴阳怪气十足。 …

php://input文件包含

实验目的 通过本实验,了解php封装伪协议,掌握php://input文件包含的用法 实验环境 操作机:kali 靶机:Windows 实验地址:http://靶机ip/exp/include2/input/input2/ 工具:burpsuite 用户名&#xff1a…

好用的屏幕录制工具--Bandicam(班迪录屏)

最近准备录个电脑的音频,找了好多个软件,除了收费就是功能有限,经过好一番折腾试用,发现了2个介面友好功能强大的录屏、录音软件: ① Bandicam(班迪录屏)(强烈推荐) ② 数据蛙录屏 Bandicam(班迪…

【PC】CPU与GPU

文章目录 CPU与主板CPU是什么主板是什么功能 GPU与显卡GPU是什么显卡是什么功能 CPU与GPU的关系 ALU: 算术单元(Arithmetic Unit):算术单元执行基本的算术运算,如加法、减法、乘法和除法。它能够对整数、浮点数和定点数…

适合成长型企业的4个 CRM 工作流程

如果你在繁琐的任务上花费太多的时间并难以让你的业务井井有条,CRM工作流程自动化可能会解决你的问题。 CRM(客户关系管理系统)是自动化工作流程最有效的工具之一,因为它可以帮助你从一个地方完成关键工作流程。CRM工作流程使你能…

软件测试技能,JMeter压力测试教程,获取post请求x-www-form-urlencoded格式的数据(二十四)

一、前言 post请求的参数有一些是json格式,也有一些是x-www-form-urlencoded格式,前面讲签名的时候获取到post请求的是json格式 本篇继续讲x-www-form-urlencoded格式的请求body如何获取到 二、x-www-form-urlencoded 在请求头部添加Content-Type类型…

CodeForces..移位密码器.[简单].[字符比较]

题目描述: 题目解读: 对字符串 a 进行加密后得到j加密字符串 s 。 加密规则为: 在字符串 a 的每个字符之后,添加任意(可能为零)数量的小写字母,与字符本身不同。 在每次这样的添加之后,我们将原字符添加…

【来不及刷题之】42、括号生成(递归)

常规的方法是用回溯来写这个题,但是回溯理解起来实在是有一点困难,下面这个思路是直接用递归来生成,首先要明确的是,在已经生成的字符串中,左括号的数量一定要大于等于右括号的数量,否则就不合法&#xff0…

ADSCOPE加入中国广告协会!

近日,经协会批准,上海倍孜网络技术有限公司正式加入中国广告协会,成为会员单位。上海倍孜将在中广协的组织和引导下,依托自身在行业深耕多年的优势,为中国数字营销领域贡献力量。 中国广告协会(中广协&…

看完就会,从抓包到接口测试的全过程解析

一、为什么抓包 从功能测试角度 通过抓包查看隐藏字段 Web 表单中会有很多隐藏的字段,这些隐藏字段一般都有一些特殊的用途,比如收集用户的数据,预防 CRSF 攻击,防网络爬虫,以及一些其他用途。这些隐藏字段在界面上…

react—Hook(2)

6. useMemo—似计算属性 useMemo和useCallback的作用十分类似,只不过它允许记住任何类型的变量(useCallback只记住函数)。当改变其他变量时,普通函数都会运行,它返回的结果并没有改变。这个时候就可以使用useMemo将函…

MFC 单文档模式

Doc类利用自带框架存数据 void CCADDoc::Serialize(CArchive& ar) {if (ar.IsStoring()){// TODO: 在此添加存储代码//保存数据到文件ar << m_nShapeCount;for (int i 0; i < m_arrShapes.GetSize(); i){CShape* pShape NULL;pShape (CShape*)m_arrShapes[i];…

如何在大背景下降本增效,构建超大规模存储架构?

在日新月异的大数据服务不断涌现的今天&#xff0c;我们可以看到作为数据基础底座的存储服务面临了越来越多的复杂环境和需求的挑战。无论是离线大数据存储&#xff0c;还是在线 KV 类存储&#xff0c;都服务了越来越多的数据应用场景。存储业务形态的多样化&#xff0c;催生了…