二进制部署Mysql8.0.31

news2024/12/24 21:31:22

一、软件包下载

企业版:Enterprise  , 互联网行业一般不选择.

社区版本:选择
            源码包 编译安装:  source code    .tar.gz   
            通用二进制 
  

公司用什么版本数据库? 具体什么小版本号?
5.6.20 5.6.34 5.6.36  5.6.38  5.6.40  
5.7.18  5.7.20  5.7.22 5.7.31
8.0.23 8.0.31

通用二进制版本: 本文档采用此方式安装

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

选择版本,再选择Operating System: Linux - Generic

img

二、卸载MariaDB

在CentOS中默认安装有MariaDB,是MySQL的一个分支,主要由开源社区维护。CentOS 7及以上版本已经不再使用MySQL数据库,而是使用MariaDB数据库。如果直接安装MySQL,会和MariaDB的文件冲突。因此,需要先卸载自带的MariaDB,再安装MySQL。

#查看是否存在MariaDB
rpm -qa|grep mariadb

#卸载mariadb
yum remove mariadb*

三、MySQL二进制安装

3.1 创建mysql工作目录:

root@db01 ~]# mkdir -p /home/application/mysql

3.2、上传软件,并解压并改名为app

[root@db01 app]# tar -xf /root/mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz


[root@db01 app]# mv mysql-8.0.31-linux-glibc2.12-x86_64 /home/application/mysql/app


[root@db01 app]# ls -l /home/application/mysql/app
total 36
drwxr-xr-x  2 root root   4096 Mar  4 14:55 bin
-rw-r--r--  1 7161 31415 17987 Sep 13  2017 COPYING
drwxr-xr-x  2 root root     55 Mar  4 14:55 docs
drwxr-xr-x  3 root root   4096 Mar  4 14:55 include
drwxr-xr-x  5 root root    229 Mar  4 14:55 lib
drwxr-xr-x  4 root root     30 Mar  4 14:55 man
-rw-r--r--  1 7161 31415  2478 Sep 13  2017 README
drwxr-xr-x 28 root root   4096 Mar  4 14:55 share
drwxr-xr-x  2 root root     90 Mar  4 14:55 support-files

3.3、修改环境变量

[root@db01 app]# vim /etc/profile  
#加入一行
export PATH=$PATH:/home/application/mysql/app/bin

[root@db01 app]# source /etc/profile

3.4、建立mysql用户和组(如果有可忽略)

useradd -s /sbin/nologin mysql -M

3.5、创建mysql 数据目录,日志目录;并修改权限

mkdir -p /home/application/mysql/data
mkdir -p /home/application/mysql/data/logs

chown -Rf mysql.mysql /home/application/mysql/app
chown -Rf mysql.mysql /home/application/mysql/data
chown -Rf mysql.mysql /home/application/mysql/logs

3.6、准备my.cnf 配置文件

vim /etc/my.cnf

[mysqld]
user=mysql
basedir=/home/application/mysql/app
datadir=/home/application/mysql/data
default-storage-engine=INNODB
character-set-server=utf8mb4
collation_server = utf8mb4_general_ci
default_authentication_plugin=mysql_native_password
 
 
#只能用IP地址检查客户端的登录,不用主机名,跳过域名解析
skip-name-resolve=1
#忽略大小写检查
lower_case_table_names=1
 
#日志时间
log_timestamps=SYSTEM
default-time-zone = '+8:00'
 
 
#慢日志
long_query_time=3
slow_query_log=ON
slow_query_log_file=/home/application/mysql/logs/slow_query.log
#不记录未使用索引的查询到慢查询日志中
log_queries_not_using_indexes = 0
#管理员执行的慢查询语句记录到慢查询日志中
log_slow_admin_statements = 1
#将从服务器执行的慢查询语句记录到慢查询日志中
log_slow_replica_statements = ON
#当未使用索引的查询数量达到10次时,开始将这些查询记录到慢查询日志中
log_throttle_queries_not_using_indexes = 10
 
 
#通用日志
#general_log=1
#general_log_file=/home/application/mysql/logs/mysql_general.log
 
#错误日志
log-error=/home/application/mysql/logs/mysqld.log
 
#innodb配置
innodb_file_per_table = 1
innodb_data_file_path = ibdata1:500M:autoextend:max:10G
innodb_temp_data_file_path = ibtmp1:500M:autoextend:max:20G
 
 
 
#binlog配置
server_id=17
log-bin=mysql-bin
max_binlog_size = 100M
binlog_format=row
log_replica_updates
#二进制日志(binlog)的过期时间-7天
binlog_expire_logs_seconds=604800
 
 
# disable_ssl
tls_version=''
port=3306
socket=/tmp/mysql.sock
max_connections=1000
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_allowed_packet=512M
 
[mysql]
socket=/tmp/mysql.sock
default-character-set = utf8mb4
 
 
[client]
default-character-set = utf8mb4

3.7、初始化数据

初始化数据,初始化管理员的密码为空

# 如果已经初始化过了,就需要把数据目录数据情况,再次初始化 rm -rf  /home/application/mysql/data/*
[root@db01 ~]# mysqld --defaults-file=/etc/my.cnf --initialize-insecure

[root@openeuler mysql]# ls -l /home/application/mysql/data/

总用量 610376
-rw-r----- 1 mysql mysql        56  3月 12 13:23 auto.cnf
-rw------- 1 mysql mysql      1676  3月 12 13:23 ca-key.pem
-rw-r--r-- 1 mysql mysql      1112  3月 12 13:23 ca.pem
-rw-r--r-- 1 mysql mysql      1112  3月 12 13:23 client-cert.pem
-rw------- 1 mysql mysql      1676  3月 12 13:23 client-key.pem
-rw-r----- 1 mysql mysql       436  3月 12 13:23 ib_buffer_pool
-rw-r----- 1 mysql mysql 524288000  3月 12 13:23 ibdata1
-rw-r----- 1 mysql mysql  50331648  3月 12 13:23 ib_logfile0
-rw-r----- 1 mysql mysql  50331648  3月 12 13:23 ib_logfile1
drwxr-x--- 2 mysql mysql      4096  3月 12 13:23 mysql
-rw-r----- 1 mysql mysql       177  3月 12 13:23 mysql-bin.000001
-rw-r----- 1 mysql mysql        19  3月 12 13:23 mysql-bin.index
drwxr-x--- 2 mysql mysql      4096  3月 12 13:23 performance_schema
-rw------- 1 mysql mysql      1680  3月 12 13:23 private_key.pem
-rw-r--r-- 1 mysql mysql       452  3月 12 13:23 public_key.pem
-rw-r--r-- 1 mysql mysql      1112  3月 12 13:23 server-cert.pem
-rw------- 1 mysql mysql      1676  3月 12 13:23 server-key.pem
drwxr-x--- 2 mysql mysql     12288  3月 12 13:23 sys
[root@openeuler mysql]# 

四、使用systemd管理mysql

vim /etc/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
 
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/home/application/mysql/app/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000

#reload从新加载下systemd
[root@db01 mysql]#  systemctl daemon-reload
#systemd 管理相关命令
systemctl  start  mysqld

五、创建root用户密码,并管理用户

[root@db01 ~]# mysqladmin -uroot -p password XXX新密码

#创建数据库
mysql> CREATE DATABASE zabbix DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
Query OK, 1 row affected (0.00 sec)

#创建用户
mysql> CREATE USER 'zabbix'@'%' IDENTIFIED BY 'zabbix';
Query OK, 0 rows affected (0.01 sec)

#授权用户
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'%';
Query OK, 0 rows affected (0.01 sec)

#刷新权限
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

六、可能遇到的问题

mysql登录报错

mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory

解决方法:

#找到libtinfo.so.6.3
find /usr/ -name 'libtinfo*'

ln -s /usr/lib64/libtinfo.so.6.3 /usr/lib64/libtinfo.so.5

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

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

相关文章

【初阶数据结构】详解顺序表(上)

文章目录 1. 数据结构2. 顺序表2.1 顺序表的概念及结构2.1.1 线性表2.1.2 顺序表与数组的差别 2.2 顺序表的分类2.2.1 静态顺序表2.2.2 动态顺序表 2.3 静态顺序表和动态顺序表的区别 在学完C语言的知识后,我们也该跨入到学习数据结构的领域中来。毕竟学习语法是为解…

带风扇工业电脑行业分析:预计2030年全球市场规模将达到45.8亿美元

工业电脑是用于工业用途(生产产品和服务)的计算机,其外形尺寸介于上网本和服务器机架之间。工业电脑的可靠性和精度标准更高,价格通常比消费电子产品更昂贵。它们通常使用复杂的指令集,例如 x86,而其他指令…

用的到linux-tomcat端口占用排查-Day5

前言: 最近使用tomcat搭建了一套测试环境的应用,整个搭建过程也很简单,就是将部署包上传至服务器☞解压☞启动tomcat服务器,当然服务器也是成功启动了,但是发现前端应用报404,具体如下图所示。 一、现象及思…

新手买智能猫砂盆怎样不踩雷?三大热门款测评推荐!

上班族养猫最害怕的就是,辛苦一天回到家,发现家里弥漫着猫便便的味道和满盆的猫屎,满地的猫砂,就感觉整个人都绝望了,你们现在是不是这样?以前的我真是为了解决这个问题想破了脑袋,后面才了解到…

电话营销机器人革新电销行业

第一,减少企业各方面的支出 企业需要各方面的支出。例如,招聘成本和管理成本、员工薪资和社保都是非常大的支出。但AI智能电销机器人,只要购买费用和电话费的一小部分,就没有更多的费用。经计算,该机器人的成本仅相当于…

java之静态内部类

1.什么是静态内部类 答:静态内部类是一种特殊的成员内部类 2.直接创建静态内部类对象的方式? Outer.Inner oinew Outer.Inner(); public class Outer {int a10;static int b20;static class Inner{public void show1(){System.out.println("非静态里的方法被调用了&qu…

【Qt】探索Qt网络编程:构建高效通信应用

文章目录 前言:1. Qt 网络编程介绍1.1 什么是网络编程?1.2 Qt的模块 2. UDP Socket2.1 核心 API 概述2.2 写一个带有界面的 Udp 回显服务器2.3 写一个带有界面的 Udp 客户端 3. TCP Socket3.1 核心 API 概述3.2 代码: 4. HTTP Client4.1 核心…

基于InP的通用光子集成技术(五)

Meint Smit et al 2014 Semicond. Sci. Technol. 29 083001 9.通用测试 9.1. 晶圆验证 在通用工艺中,必须对每批次晶片的工艺性能进行验证;客户将期待这样的验证。在MPW中,验证用户ASPIC工艺性能是不实际的;每个ASPIC都需要不同的…

Shopee巴西站点凭直播带货超越亚马逊,shopee巴西站热销类目有哪些?

巴西电商市场加速增长,被誉为跨境最后一个蓝海市场,吸引了众多卖家和电商平台的关注。在这一片潜力无限的热土上,有人隔岸观火等待时机;有人却果断迈步积极探索。东南亚及台湾地区的领航电商平台Shopee平台,在巴西强势…

【Python机器学习】利用AdaBoost元算法提高分类性能——在数据集上应用AdaBoost

在之前用过的马疝病数据集上应用AdaBoost。 在一个难数据集上的AdaBoost应用步骤: 1、收集数据:提供的文本文件 2、准备数据:确保类别标签是1河-1而不是1和0 3、分析数据:手工检查数据 4、训练算法:在数据上&#xff…

java-面向对象综合练习

1、文字格斗回合制游戏 需求: 格斗游戏,每个游戏角色的姓名,血量,都不相同,在选定人物的时候(new对象的时候),这些信息就应该被确定下来。 举例: 程序运行之后结果为&#xff1a…

加密软件中的RSA和ECC的主要区别是什么

在加密软件中,RSA(Rivest-Shamir-Adleman)和ECC(Elliptic Curve Cryptography,椭圆曲线密码学)是两种广泛使用的非对称加密算法,它们之间存在多个关键区别。 1. 算法基础 RSA:基于大…

RPA+AI有什么应用?6大技术融合方向分析 | 实在RPA研究

随着数字化转型的加速,企业正寻求更高效、智能的方法来优化业务流程。机器人流程自动化(RPA)作为一种快速兴起的技术,已经证明了其在自动化重复性任务方面的能力。然而,当RPA与各种人工智能(AI)…

外部时钟传送带测量装置

外部时钟&传送带测量装置 1.外部时钟介绍2.循迹模块3.实操过程1.设置2.代码3.效果 链接: keysking-17 1.外部时钟介绍 将GPIO的外部电平接入即可对外部信号进行计数(PS:上面的内部时钟不是所谓的“高速内部时钟”,而是APB1的定时器分支)。当然,GPIO…

zabbix“专家坐诊”第250期问答

问题一 Q:乐维监控社区版监控交换机,能统计出端口的IP流量排名吗? A:社区版没有这个功能 ,正式版,流量报表可以实现端口IP流量排行。 问题二 Q:我看了一下乐维有事件平台汇总的功能&#xff0…

浅谈逻辑控制器插件之jp@gc - Parameterized Controller

浅谈逻辑控制器插件之jpgc - Parameterized Controller jpgc - Parameterized Controller是JMeter的一个强大插件,由JMeter Plugins项目提供。此插件允许用户以更加灵活和动态的方式控制测试计划中的采样器执行逻辑。它通过引入参数化概念,使得单个控制…

【学术会议征稿】第四届电气工程与计算机技术国际学术会议(ICEECT2024)

第四届电气工程与计算机技术国际学术会议(ICEECT2024) 2024 4th International Conference on Electrical Engineering and Computer Technology 第四届电气工程与计算机技术国际学术会议(ICEECT2024)将于9月27日-29日在哈尔滨举…

汇编语言入门基础(概述)

目录 概述: 1.1 汇编语言与汇编指令 1.2 汇编语言编写程序的工作过程 1.3 数据的表示 1.4 计算机中的存储单元 1.5 计算机中的总线 1.5.1 三种总线 1.5.2 x86CPU性能一览 1.6 内存的读写与地址空间 1.6.1 CPU对存储器的读写 1.6.2 内存地址空间 1.6.3 内存地址空间…

linux虚拟机设置固定ip

修改/etc/sysconfig/network-scripts目录下ifcfg-eth0文件,各虚拟机这个文件名不一致,ifcfg-XX格式 vim /etc/sysconfig/network-scripts/ifcfg-eth0BOOTPROTO设置为static,然后在最后添加固定IP地址和默认网关、DNS等配置,IP地址…

学习笔记 韩顺平 零基础30天学会Java(2024.8.5)

P460 八大Wrapper类 黄色的父类是number,黑色的是自己独立的 P461 装箱和拆箱 手动装箱示例: int n1 100; Interger interger new Interger(n1);//或者:Interger interger Interger.valueOf(n1); 手动拆箱示例: int i interge…