【MySQL基础】MySQL安装第三弹-mariadb-10.2.8

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MySQL基础-MySQL安装第二弹-Percona5.7安装

MySQL安装第二弹-Percona5.7安装

一.操作系统选择

Centos/RHEL/ORACLE LIUNX 5.X/6.X/7.X x86_64 发行版


二.操作系统参数调整

2.1 selinux设置


[root@localhost ~]# cat /etc/selinux/config
SELINUX=disabled
AI 代码解读

#关闭selinux 

2.2调整最大文件数限制


[root@localhost ~]# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 7861
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 7861
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
AI 代码解读

#open files   最大打开文件数限制

#max user processes 每个用户最大processes数量


vim  /etc/security/limits.conf
*                soft    nofile         65535
*                hard    nofile         65535
*                soft    nproc          65535
*                hard    nproc         65535
[root@localhost ~]# ulimit -a
open files                      (-n) 65535
max user processes              (-u) 65535
AI 代码解读

#每个操作系统修改方式可能不一样,参考一个操作系统的官方文档或google一下

2.3 io调度器修改

io调度器修改为deadline


echo “deadline” > /sys/block/sdb/queue/scheduler 
AI 代码解读

这里的sdb 修改为实际的设备名称 例如 sda 或者sdc。 /data所在的设备名称

 B) 需要加入到 /etc/rc.local 中开启自动加载


2.4系统内核参数修改


vm.swappiness =5  #控制linux物理RAM内存进行SWAP页交换的相对权重
vm.dirty_ratio =5 #脏页占整个内存的比例,开始刷新 
vm.dirty_background_ratio = 10 #脏页占程序的百分比 ,开始刷新
AI 代码解读

2.5关闭NUMA特性

新一代架构的NUMA不适用于跑数据库的场景。它本意是为了提高内存利用率,但实际效果不好,反而可能导致一个CPU的内存尚有剩余,但另一个不够用,发生SWAP的问题,因此建议直接关闭或者修改NUMA的调度机制。

a) 修改/etc/grub.conf,关闭NUMA,重启后生效

修改/etc/grub.conf 配置文件,在kernel 那行增加一个配置后重启生效,例如:

kernel /vmlinuz-2.6.18-308.el5 ro root=LABEL=/1elevator=deadlinenuma=off rhgb quiet

b) 修改/etc/init.d/mysql 或者mysqld_safe 脚本,设定启动mysqld进程时的NUMA调度机制,例如:

numactl --interleave=all /usr/local/mysql/bin/mysqld_safe .......

c) BIOS硬件中关闭

#注 a b c 方法中任选其一。

2.6关闭CPU的节能模式 

CPU启用节能模式后,会节约电量,但也可能带来CPU性能下降的问题。因此,运行数据库类业务时,建议关闭节能模式,发挥CPU的最大性能。

A)BIOS硬件中关闭

# 如果不是非核心业务 并且不繁忙的情况下 可以不用调整


三 MySQL环境

3.1 环境规范定义

MySQL安装包下载地址:https://downloads.mariadb.org/

#选择MariaDB 10.2 Series 版本 最新的分支版本 已经GA

 目录定义

 #/usr/local/mysql #MySQL程序目录

 #/data/mysql{端口号}/data 数据目录

 #/data/mysql{端口号}/log  binlog目录

3.2安装MariaDB 

a) 创建MySQL用户


useradd mysql -s /sbin/nologin
AI 代码解读

b) 上传MySQL二进制包并解压


tar -zxvf mariadb-10.2.8-linux-glibc_214-x86_64.tar.gz 

c) 创建软链接


[root@localhost local]# ln -s  mariadb-10.2.8-linux-glibc_214-x86_64 mysql
AI 代码解读

d)根据目录定义创建目录

 
  

e)修改权限


[root@localhost local]# chown mysql:mysql /data/
[root@localhost local]# chown mysql:mysql /data/* -R
[root@localhost local]# chown mysql:mysql /usr/local/mysql
[root@localhost local]# chown mysql:mysql /usr/local/mysql/* -R
AI 代码解读

f)安装需的软件包

 

  yum groupinstall    Development Tools
AI 代码解读

g) 修改MySQL配置文件


[client]
port            = 3306
socket          = /tmp/mysql.sock

[mysql]
prompt="\\u@\\h:\\p  [\\d]> 
#pager="less -i -n -S"
##tee=/home/mysql/query.log
no-auto-rehash

[mysqld]
#misc
user = mysql
basedir = /usr/local/mysql
datadir = /data/mysql3306/data
port = 3306
socket = /tmp/mysql.sock
event_scheduler = 0
binlog_format = row
server-id = 63306
log-bin = /data/mysql3306/log/mysql-bin
AI 代码解读
#一个最基础的配置文件 ,后续会针对做讲解和配置优化

 

k)初始化MySQL


cd /usr/local/mysql/scripts
[root@localhost scripts]# ./mysql_install_db --basedir=/usr/local/mysql --user=mysql
AI 代码解读


h)启动MySQL


/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
[root@localhost data]# /usr/local/mysql/bin/mysql -u root -p #登录 
AI 代码解读

i)安全设置



"root@localhost:mysql.sock  [(none)]>drop database test;
"root@localhost:mysql.sock  [mysql]> delete from user where not(host='localhost' and user='root');
"root@localhost:mysql.sock  [mysql]>update mysql.user set password=password("redhat") where user='root';
"root@localhost:mysql.sock  [mysql]>truncate table mysql.db;
"root@localhost:mysql.sock  [mysql]>FLUSH PRIVILEGES;
AI 代码解读



安装完成
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
1
61
分享
相关文章
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
186 42
CentOS7仅安装部署MySQL80客户端
通过上述步骤,你可以在CentOS 7上成功安装并配置MySQL 8.0客户端。这个过程确保你能够使用MySQL客户端工具连接和管理远程的MySQL数据库,而不需要在本地安装MySQL服务器。定期更新MySQL客户端可以确保你使用的是最新的功能和安全修复。
295 16
【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程
在这一章节,主要介绍两个部分,数据库相关概念及MySQL数据库的介绍、下载、安装、启动及连接。接着,详细描述了MySQL 8.0的版本选择与下载,推荐使用社区版(免费)。安装过程包括自定义安装路径、配置环境变量、启动和停止服务、以及客户端连接测试。此外,还提供了在同一台电脑上安装多个MySQL版本的方法及卸载步骤。最后,解释了关系型数据库(RDBMS)的特点,即基于二维表存储数据,使用SQL语言进行操作,格式统一且便于维护。通过具体的结构图展示了MySQL的数据模型,说明了数据库服务器、数据库、表和记录之间的层次关系。
【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
147 14
docker高级篇(大厂进阶):安装mysql主从复制
docker高级篇(大厂进阶):安装mysql主从复制
137 24
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
162 7
Windows Server 安装 MySQL 8.0 详细指南
安装 MySQL 需要谨慎,特别注意安全配置和权限管理。根据实际业务需求调整配置,确保数据库的性能和安全。
406 9
Linux安装jdk、mysql、redis
Linux安装jdk、mysql、redis
266 7
Docker安装Mysql5.7,解决无法访问DockerHub问题
当 Docker Hub 无法访问时,可以通过配置国内镜像加速来解决应用安装失败和镜像拉取超时的问题。本文介绍了如何在 CentOS 上一键配置国内镜像加速,并成功拉取 MySQL 5.7 镜像。
1129 3
Docker安装Mysql5.7,解决无法访问DockerHub问题
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等