【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 #开机自启
© 著作权归作者所有,转载或内容合作请联系作者

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

相关推荐
DanCheng-studio21 小时前
网安毕业设计简单的方向答疑
python·毕业设计·毕设
S***26751 天前
基于SpringBoot和Leaflet的行政区划地图掩膜效果实战
java·spring boot·后端
JIngJaneIL1 天前
社区互助|社区交易|基于springboot+vue的社区互助交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·社区互助
这是程序猿1 天前
基于java的ssm框架旅游在线平台
java·开发语言·spring boot·spring·旅游·旅游在线平台
i***t9191 天前
基于SpringBoot和PostGIS的云南与缅甸的千里边境线实战
java·spring boot·spring
k***08291 天前
【监控】spring actuator源码速读
java·spring boot·spring
一 乐1 天前
应急知识学习|基于springboot+vue的应急知识学习系统(源码+数据库+文档)
数据库·vue.js·spring boot
vx_dmxq2111 天前
【PHP考研互助系统】(免费领源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案
java·spring boot·mysql·考研·微信小程序·小程序·php
5***g2981 天前
新手如何快速搭建一个Springboot项目
java·spring boot·后端
单片机日志1 天前
【单片机毕业设计】【mcugc-mcu826】基于单片机的智能风扇系统设计
stm32·单片机·嵌入式硬件·毕业设计·智能家居·课程设计·电子信息