【MySql】-0.1、Unbunt20.04二进制方式安装Mysql5.7和8.0

1、下载Mysql二进制报(选择Linux的通用版本)

mysql官网地址:https://downloads.mysql.com/archives/community/

wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.26-linux-glibc2.12-x86_64.tar

wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.18-linux-glibc2.12-x86_64.tar

2、解压,注意需要解压二次

tar xvf /data/db/mysql-5.7.26-linux-glibc2.12-x86_64.tar

tar xvf /data/db/mysql-8.0.18-linux-glibc2.12-x86_64.tar

tar xvf /data/db/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

tar xvf /data/db/mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz

ansible 解压必须指定目录,如果不指定,会默认解压在root的家目录下。

ansible db -m shell -a 'tar xvf /data/db/mysql-5.7.26-linux-glibc2.12-x86_64.tar -C /data/db/'

ansible db -m shell -a 'tar xvf /data/db/mysql-8.0.18-linux-glibc2.12-x86_64.tar -C /data/db/'

ansible db -m shell -a 'tar xvf /data/db/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C /data/db/'

ansible db -m shell -a 'tar xvf /data/db/mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz -C /data/db/'

3、重名,方便记忆是识别

ansible db -m shell -a 'mv /data/db/mysql-5.7.26-linux-glibc2.12-x86_64 /data/db/mysql-5.7'

ansible db -m shell -a 'mv /data/db/mysql-8.0.18-linux-glibc2.12-x86_64 /data/db/mysql-8.0'

  1. 创建用户组

groupdel mysql #删除组

groupadd mysql #添加组

5.创建用户

userdel mysql #删除用户

useradd -r -g mysql -s /bin/false mysql #添加用户 -g mysql 是指定用户组 -s /bin/false 是指定用户所使用的shell 最后mysql是用户名称

  1. 指定mysql文件夹为mysql用户所有

chown mysql ./mysql -R

7.在data目录下创建mysql相关文件夹文件夹

mkdir /data/mysql

mkdir /data/mysql/logs

mkdir /data/mysql/conf

mkdir /data/mysql/data

8.安装相关依赖

apt-get install libaio1 libaio-dev

sudo apt-get install libncurses5-dev

9、创建my.cnf 文件

[mysql]

#设置mysql客户端默认字符集

default-character-set=utf8mb4

mysqld

skip-name-resolve

user=mysql

ngram_token_size=2

server-id=1

default_password_lifetime=0

port=3306

#设置安装目录

basedir=/opt/mysql

#数据存放目录

datadir=/data/mysql/data

log-error=/data/mysql/logs/err.log

#允许最大连接数

max_connections=1000

#服务端默认使用的字符集

character-set-server=utf8mb4

#创捷新表时默认的储存引擎

default-storage-engine=INNODB

#忘记密码时使用

#skip-grant-tables

#不区分大小写

lower_case_table_names=1

#认证方式

default_authentication_plugin=mysql_native_password

max_allowed_packet=500M

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

wait_timeout=28800

interactive_timeout=28800

max_connect_errors=100

max_user_connections=0

#日志文件大小

max_binlog_size=100M

10、安装启动

指定配置文件安装

./mysqld --defaults-file=/data/mysql/conf/my.cnf --initialize

指定配置文件启动

./mysqld --defaults-file=/data/mysql/conf/my.cnf &

11、创建文件 mysql.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

Have mysqld write its state to the systemd notify socket

Type=notify

Disable service start and stop timeout logic of systemd for mysqld service.

TimeoutSec=0

Start main service

ExecStart=/opt/mysql/bin/mysqld --defaults-file=/data/mysql/conf/my.cnf $MYSQLD_OPTS

Use this to switch malloc implementation

EnvironmentFile=-/etc/sysconfig/mysql

Sets open_files_limit

LimitNOFILE = 10000

Restart=on-failure

RestartPreventExitStatus=1

Set environment variable MYSQLD_PARENT_PID. This is required for restart.

Environment=MYSQLD_PARENT_PID=1

PrivateTmp=false

12、在把 mysql.service 放到 /usr/lib/systemd/system 目录下

systemctl start mysql #启动

systemctl stop mysql #停止

systemctl restart mysql #重启

systemctl enable mysql #开机自启
© 著作权归作者所有,转载或内容合作请联系作者

喜欢的朋友记得点赞、收藏、关注哦!!!

相关推荐
大学生资源网7 小时前
基于springboot的唐史文化管理系统的设计与实现源码(java毕业设计源码+文档)
java·spring boot·课程设计
大学生资源网8 小时前
java毕业设计之儿童福利院管理系统的设计与实现(源码+)
java·开发语言·spring boot·mysql·毕业设计·源码·课程设计
Spring AI学习8 小时前
Spring AI深度解析(10/50):多模态应用开发实战
java·spring·ai
小鸡脚来咯9 小时前
Redis与MySQL双写一致性(实战解决方案)
spring·oracle·mybatis
老华带你飞9 小时前
物流信息管理|基于springboot 物流信息管理系统(源码+数据库+文档)
数据库·vue.js·spring boot
我是小妖怪,潇洒又自在10 小时前
springcloud alibaba(九)Nacos Config服务配置
后端·spring·spring cloud
qq_124987075311 小时前
重庆三峡学院图书资料管理系统设计与实现(源码+论文+部署+安装)
java·spring boot·后端·mysql·spring·毕业设计
大学生资源网11 小时前
java毕业设计之“知语”花卉销售网站的设计与实现源码(源代码+文档)
java·mysql·毕业设计·源码·springboot
小鸡脚来咯11 小时前
Redis三大问题:穿透、击穿、雪崩(实战解析)
java·spring·mybatis
jiayong2311 小时前
Spring AI Alibaba 深度解析(三):实战示例与最佳实践
java·人工智能·spring