基于二进制包的mysql安装

下载二进制包

wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.35-linux-glibc2.17-x86_64.tar.xz

查看是否存在mariadb安装

[root@bogon ~]# rpm -qa | grep mariadb 
mariadb-libs-5.5.68-1.el7.x86_64

#卸载包。 --nodeps 不检验依赖

[root@bogon ~]# rpm -e  --nodeps  mariadb-libs

查看glibc的版本:

[root@bogon ~]# ldd --version
ldd (GNU libc) 2.17
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

创建用户和用户组

[root@bogon ~]# groupadd mysql
[root@bogon ~]# useradd -g mysql mysql

创建my.cnf

[root@bogon mysql]# cat /etc/my.cnf
[client]
socket = /data/mysql/3306/data/mysql.sock[mysqld]
character_set_server=UTF8MB4
user = mysql
port = 3306
basedir = /usr/local/mysql
datadir = /data/mysql/3306/data
socket = /data/mysql/3306/data/mysql.sock
log_error = /data/mysql/3306/data/mysqld.err
log_timestamps = system

创建目录:

mkdir -p /data/mysql/3306/data
chown mysql.mysql /data/mysql/3306/data

初始化实例:

/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize

启动mysql实例

/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &

查看进程:

[root@bogon mysql]# ps -ef | grep mysqld
root       2579   1563  0 21:11 pts/0    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf
mysql      2743   2579  0 21:11 pts/0    00:00:01 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql/3306/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysql/3306/data/mysqld.err --pid-file=bogon.pid --socket=/data/mysql/3306/data/mysql.sock --port=3306
root       2797   1563  0 21:17 pts/0    00:00:00 grep --color=auto mysqld

数据目录的内容:

[root@bogon data]# ll /data/mysql/3306/data
total 91600
-rw-r-----. 1 mysql mysql       56 Dec 28 21:11 auto.cnf
-rw-r-----. 1 mysql mysql      157 Dec 28 21:11 binlog.000001
-rw-r-----. 1 mysql mysql       16 Dec 28 21:11 binlog.index
-rw-r-----. 1 mysql mysql        5 Dec 28 21:11 bogon.pid
-rw-------. 1 mysql mysql     1705 Dec 28 21:11 ca-key.pem
-rw-r--r--. 1 mysql mysql     1112 Dec 28 21:11 ca.pem
-rw-r--r--. 1 mysql mysql     1112 Dec 28 21:11 client-cert.pem
-rw-------. 1 mysql mysql     1705 Dec 28 21:11 client-key.pem
-rw-r-----. 1 mysql mysql   196608 Dec 28 21:14 #ib_16384_0.dblwr
-rw-r-----. 1 mysql mysql  8585216 Dec 28 21:11 #ib_16384_1.dblwr
-rw-r-----. 1 mysql mysql     5737 Dec 28 21:11 ib_buffer_pool
-rw-r-----. 1 mysql mysql 12582912 Dec 28 21:11 ibdata1
-rw-r-----. 1 mysql mysql 12582912 Dec 28 21:12 ibtmp1
drwxr-x---. 2 mysql mysql     4096 Dec 28 21:11 #innodb_redo
drwxr-x---. 2 mysql mysql      187 Dec 28 21:11 #innodb_temp
drwxr-x---. 2 mysql mysql      143 Dec 28 21:11 mysql
-rw-r-----. 1 mysql mysql     1469 Dec 28 21:11 mysqld.err
-rw-r-----. 1 mysql mysql 26214400 Dec 28 21:12 mysql.ibd
srwxrwxrwx. 1 mysql mysql        0 Dec 28 21:11 mysql.sock
-rw-------. 1 mysql mysql        5 Dec 28 21:11 mysql.sock.lock
drwxr-x---. 2 mysql mysql     8192 Dec 28 21:11 performance_schema
-rw-------. 1 mysql mysql     1709 Dec 28 21:11 private_key.pem
-rw-r--r--. 1 mysql mysql      452 Dec 28 21:11 public_key.pem
-rw-r--r--. 1 mysql mysql     1112 Dec 28 21:11 server-cert.pem
-rw-------. 1 mysql mysql     1709 Dec 28 21:11 server-key.pem
drwxr-x---. 2 mysql mysql       28 Dec 28 21:11 sys
-rw-r-----. 1 mysql mysql 16777216 Dec 28 21:14 undo_001
-rw-r-----. 1 mysql mysql 16777216 Dec 28 21:14 undo_002

数据目录内容解释说明:

1.auto.cnf

MySQL启动时,会自动从data_dir/auto.cnf 文件中获取server-uuid值,并将这个值存储在全局变量server_uuid中。如果这个值或者这个文件不存在,那么将会生成一个新的uuid值,并将这个值保存在auto.cnf文件中。这个uuid的作用是在mysql复制时如果发生故障,slave可以通过uuid辨识master的日志。

2.binlog.index

用于记录MySQL产生的binlog日志的具体位置,binlog是MySQL记录所有操作的逻辑日志,主要用于故障恢复和主从同步时使用,由于MySQL数据库是一个多类型存储引擎并存的数据库,binlog就起着一个实例(instance)总体重做信息的角色。

3.*.pem文件

此类文件是在MySQL8.0以后加入的,用于ssl认证登陆

4.ib_buffer_pool

mysql innodb buffer pool 预热,当mysql数据库innodb buffer pool达到一定量级之后再异常宕机重启之后,就会面临一个严峻的问题,就是如何快速预热buffer pool,光靠innodb是不够的,这时就需要将innodb buffer pool存储到存储中,在数据文件中进行备份,在重启时innodb 直接读取此文件,但是要保证innodb版本 page页大小,buffer pool大小前后一致。

innodb_buffer_dump_at_shutdown:默认为关闭OFF。如果开启该参数,停止MySQL服务时,InnoDB将InnoDB缓冲池中的热数据保存到本地硬盘。

innodb_buffer_pool_load_at_startup:默认为关闭OFF。如果开启该参数,启动MySQL服务时,MySQL将本地热数据加载到InnoDB缓冲池中。

innodb_buffer_pool_load_now:默认为关闭OFF。如果开启该参数,停止MySQL服务时,以手动方式将InnoDB缓存池中的热数据保存到本地硬盘。

innodb_buffer_pool_filename:如果开启InnoDB预热功能,停止MySQL服务时,MySQL将InnoDB缓冲池中的热数据保存到数据库根目录中,默认文件名为ib_buffer_pool.

innodb_buffer_pool_load_aborr:默认为关闭OFF。如果开启该参数,即便开启InnoDB预热功能,启动MySQL服务室,MySQL也不会将本地硬盘的热数据加载到InnoDB缓冲池中。

5.#ib_16384_0.dblwr #ib_16384_1.dblwr

Doublewrite buffer是一个存储,InnoDB将页写入InnoDB数据文件适当位置之前,会将缓冲池中页刷新到该存储中。如果操作系统,存储子系统,或者mysqld进程在页写入中途崩溃,InnoDB可以在崩溃恢复中从doublewrite buffer中找到一份好的备份。

虽然数据写了2次,doublewrite buffer不会需要2倍的IO负载和2倍的IO操作。数据将以一个大的连续块写入到doublewrite buffer中,操作系统单次调用fsync()(除非innodb_flush_method被设置为O_DIRECT_NO_FSYNC)。

MySQL8.0.20之前,doublewrite buffer存储在InnoDB 系统表空间中。从MySQL8.0.20开始,doublewrite buffer存储在双写文件中。

doublewrite buffer配置提供以下参数:

innodb_doublewrite:控制是否启用doublewrite buffer。默认启用。设置innodb_doublewrite=0或者启动MySQL服务时加–skip-innodb-doublewrite选项禁用。

如果doublewrite buffer位于支持原子写的Fusion-io设备上,则自动禁用doublewrite buffer,并使用Fusion-io原子写来执行数据文件写。

innodb_doublewrite_dir:8.0.20引入的,定义了InnoDB创建双写文件的目录。如果目录没有指定,双写文件创建在innodb_data_home_dir目录下,没有指定默认在数据目录下。

哈希符’#‘会自动创建在指定目录名前缀,避免与shema名冲突。然而,如果使用了’.‘, ‘#’. 或者’/‘指定了目录前缀,则不在目录名前缀没有哈希符’#'。

innodb_doublewrite_files:参数定义了双写文件的数量。默认情况下,每个缓冲池实例都会创建2个双写文件:一个刷新列表双写文件和一个LRU列表双写文件。

刷新列表双写文件用于从缓冲池刷新列表中刷新页。刷新列表双写文件默认大小是InnoDB page size * doublewrite page bytes.

LRU列表双写文件是用于刷新从缓冲池LRU列表的页。它也包括单个页刷新的槽。LRU列表双写文件默认大小为InnoDB page size * (doublewrite pages + (512 / the number of buffer pool instances)),512是为单个页刷新保留的槽的总数。

至少有2个双写文件。双写文件的最大数量是缓冲池实例的两倍。(缓冲池实例的数量由参数innodb_buffer_pool_instances控制)

双写文件有以下格式:#ib_page_size_file_number.dblwr。例如,下面的双写文件是在一个InnoDB页大小为16KB,单个缓冲池的MySQL实例上创建:

innodb_doublewrite_pages:MySQL8.0.20引入的,控制每个线程双写页的最大数量。如果这个值没有指定,innodb_doublewrite_pages设置为innodb_write_io_threads值。这个参数用于高级性能调优。默认值已经适用于大多数用户。

innodb_doublewrite_batch_size:参数MySQL8.0.20引入的,控制一批写入双写页的数量。这个参数用于高级性能调优。默认值已经适用于大多数用户。

6.ibdata1

innodb默认共享表空间,在不指定下默认所有表共享一个表空间,但是一般生产环境中建议修改默认值,每个表一个表空间

7.ib_logfile*

innodbredo日志,区别于binlog,由于mysql是一个支持多存储引擎共存的数据库,所以innodb redo只记录innodb 存储引擎的重做日志,并且redo是一个物理日志,通过xid记录数据文件位置和binlog中的位置,而binlog记录的是记录mysql全局的变化量,是一个逻辑日志。实际中mysql中由于两阶段commit的存在弱化了innodb redo的管理,也不需要像Oracle中需要备份redo日志,mysql中只需要备份binlog日志即可。

8.ibtmp1

innodb临时表空间

9.undo_001和undo_002

innodbundo表空间

登录数据库

[root@bogon data]# grep password /data/mysql/3306/data/mysqld.err 
2023-12-28T21:11:50.431792-05:00 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: QdfhOte2gc(C[root@bogon mysql]# bin/mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.35Copyright (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> select user();
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> 
mysql> 
mysql> alter user user() identified by '123456';
Query OK, 0 rows affected (0.01 sec)-- 加载密码验证组件
mysql> install component 'file://component_validate_password';
Query OK, 0 rows affected (0.00 sec)
-- 查看组件是否已加载
mysql> select * from mysql.component;
+--------------+--------------------+------------------------------------+
| component_id | component_group_id | component_urn                      |
+--------------+--------------------+------------------------------------+
|            1 |                  1 | file://component_validate_password |
+--------------+--------------------+------------------------------------+
1 row in set (0.00 sec)-- 修改密码为简单密码报错
mysql> alter user user() identified by '1234564';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
-- 修改密码为复杂密码
mysql> alter user user() identified by 'MyPass4!';
Query OK, 0 rows affected (0.01 sec)

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

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

相关文章

gem5学习(7):内存系统中创建 SimObjects--Creating SimObjects in the memory system

目录 一、gem5 master and slave ports 二、Packets 三、Port interface 1、主设备发送请求时从设备忙 2、从设备发送响应时主设备忙 四、Simple memory object example 1、Declare the SimObject 2、Define the SimpleMemobj class 3、Define the SimpleMemobj class…

EST-100身份证社保卡签批屏按捺终端PC版web版本http协议接口文档,支持web网页开发对接使用

<!DOCTYPE html><html lang"zh-CN"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width,initial-scale1.0"><title>演示DEMO</title><script type"text/…

亚马逊SEO是什么意思?亚马逊标题的SEO方法是什么?-站斧浏览器

亚马逊SEO是什么意思&#xff1f; 亚马逊SEO主要包括了对标题、描述、五点简介等元素的优化&#xff0c;以及评价和评论的管理等方面。下面将详细分析亚马逊SEO的相关内容&#xff0c;帮助卖家更好地理解和应用。 在亚马逊平台上进行SEO优化需要考虑以下几个方面&#xff1a;…

gin框架使用系列之四——json和protobuf的渲染

系列目录 《gin框架使用系列之一——快速启动和url分组》《gin框架使用系列之二——uri占位符和占位符变量的获取》《gin框架使用系列之三——获取表单数据》 上篇我们介绍了如何获取数据&#xff0c;本篇我们介绍一下如何返回固定格式的数据。 一、返回JSON数据 在web开发中…

如何在临近期末考之前,保持一个良好的心态呢?

在临近期末考之前&#xff0c;保持一个良好的心态非常重要&#xff0c;因为这有助于你在考试中发挥出自己的最佳水平。以下是一些建议&#xff0c;帮助你保持冷静和专注&#xff1a; 制定计划&#xff1a;制定一个详细的学习计划&#xff0c;包括每天要复习的科目和内容。这样…

开源安全测试工具 | 网络安全工具列表

自动化渗透测试 • AttackSurfaceMapper (https://github.com/superhedgy/AttackSurfaceMapper) - 自动化渗透测试工具, 使用手册/测试流程 (https://www.uedbox.com/post/59110/)。 • vajra (https://github.com/r3curs1v3-pr0xy/vajra) - 自动化渗透测试. • Savior (https…

Linux管理LVM逻辑卷

目录 一、LVM逻辑卷介绍 1. 概述 2. LVM基本术语 2.1 PV&#xff08;Physical Volume&#xff0c;物理卷&#xff09; 2.2 VG (Volume Group&#xff0c;卷组&#xff09; 2.3 LV (Logical Volume&#xff0c;逻辑卷&#xff09; 3. 常用的磁盘命令 4. 查看系统信息的命…

golang第一卷---go入门

go入门 对于使用go的好处环境变量配置开发工具 参考网站 &#xff1a;go入门 对于使用go的好处 简单好记的关键词和语法。轻松上手&#xff0c;简单易学。更高的效率。比Java&#xff0c;C等拥有更高的编译速度&#xff0c;同时运行效率媲美C&#xff0c;同时开发效率非常高。…

爬虫工作量由小到大的思维转变---<第三十三章 Scrapy Redis 23年8月5日后会遇到的bug)>

前言: 收到回复评论说,按照我之前文章写的: 爬虫工作量由小到大的思维转变---&#xff1c;第三十一章 Scrapy Redis 初启动/conn说明书)&#xff1e;-CSDN博客 在启动scrapy-redis后,往redis丢入url网址的时候遇到: TypeError: ExecutionEngine.crawl() got an unexpected …

Conda简介及常用指令

Conda 是一个开源的包管理器和环境管理器&#xff0c;主要用于安装、运行和升级数据科学和机器学习等领域的软件包和依赖。Conda 可以用于多种语言&#xff0c;包括 Python、R、Ruby、Lua、Scala、Java、JavaScript、C/ C 等。 Conda 的主要特点 环境管理&#xff1a;Conda 允…

linux查看服务器内存

要查看服务器内存&#xff0c;可以使用以下命令&#xff1a; 使用 free 命令来查看服务器的内存使用情况&#xff1a; free -h该命令将显示内存使用情况的摘要&#xff0c;包括总内存、已使用内存、可用内存等信息。 使用 top 命令来实时监视内存使用情况&#xff1a; top在…

Qt GUI 优化方案详解

文章目录 一、引言二、应用启动优化2.1 懒加载概念1. **懒加载的应用场景:**2. **Qt中的懒加载方式:**3. **示例 - C++中的懒加载:**4. **示例 - QML中的懒加载:**2.2 异步加载1. **异步加载的应用场景:**2. **实现异步加载的方式:**3. **示例 - 使用Qt的异步网络请求:*…

数据资产专题3:估值

欢迎关注主页个人介绍及相关链接&#xff0c;获取更多算法源码材料 2023数据资源入表白皮书&#xff0c;推荐系统源码下载-CSDN博客 浅析研发支出费用化和资本化的区别-CSDN博客 商业银行数据资产估值白皮书&#xff0c;推荐系统源码下载-CSDN博客 用友BIP数据资产入表解决…

odoo17核心概念view4——view.js

这是view系列的第四篇文章&#xff0c;专门介绍View组件。 作为一个Component&#xff0c;它总共包含js、css、xml三个标准文件&#xff0c;当然最重要的是view.js 首先在setup函数中对传入的参数props做了各种校验&#xff0c;然后扩展了subenv useSubEnv({keepLast: new Kee…

2. SQL - 约束

1 主键约束 PRIMARY KEY 约束唯一标识数据库表中的每条记录。 主键必须包含唯一的值。 主键列不能包含 NULL 值。 每个表都应该有一个主键&#xff0c;并且每个表只能有一个主键。 添加主键约束 创建表时&#xff0c;在字段描述处&#xff0c;声明指定字段为主键创建表时&…

PLC远程上下载物联网网关的功能

PLC远程上下载物联网网关的功能 设备远程监控&#xff1a;通过物联网网关&#xff0c;可以实时监控PLC设备的运行状态&#xff0c;获取设备的各种参数信息&#xff0c;以便及时发现和解决设备故障。 数据采集与传输&#xff1a;蓝蜂物联网PLC远程网关可以采集PLC设备的各种数据…

C++ --绪论

绪论 1.1 导学1.2 计算机系统简介1.3 计算机语言和程序设计方法的发展1.4 面向对象的基本概念1.5 程序的开发过程 计算机程序 程序是指令的集合 面向过程的语言&#xff1a;c语言 面向对象的语言&#xff1a;c、python、java 类继承多态 注释 // 两个相离最近的 /**/ 会结…

深度学习中的Epoch

深度学习中的Epoch 大家好&#xff0c;我是免费搭建查券返利机器人赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01;今天&#xff0c;让我们一同探讨深度学习领域中不可或缺的概念之一——Epoch。 1. 什么是Epoch&…

pyDAL一个python的ORM(4) pyDAL查询操作

1 、简单查询 rows db(db.person.dept marketing).select(db.person.id, db.person.name, db.person.dept) rows db(db.person.dept marketing).select() rows db(db.person.dept marketing).select(db.person.ALL) rows db().select(db.person.ALL) / db(db.person).se…

飞企互联-FE企业运营管理平台 登录绕过漏洞复现

0x01 产品简介 飞企互联-FE企业运营管理平台是一个基于云计算、智能化、大数据、物联网、移动互联网等技术支撑的云工作台。这个平台可以连接人、链接端、联通内外&#xff0c;支持企业B2B、C2B与O2O等核心需求&#xff0c;为不同行业客户的互联网转型提供支持。 0x02 漏洞概…