mysql非安装版安装教程5.7.23_Centos7,MySQL 5.7.23(稳定版) 生产环境,二进制压缩包官网安装步骤...

1、进入MySQL官网,下载二进制tar.gz压缩包进入 mysql5.7社区版下载页面。选择版本、类型 然后进入下载地址。不登录可以直接下载,下载后上传至服务器即可;或者直接右击复制下载地址,在服务器用wget命令下载。

2、解压安装二进制tar,gz压缩包解压刚刚下载的tar.gz 压缩文件,并移动至/usr/local/mysql

shell> tar -xvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz

shell> mvmysql-5.7.23-linux-glibc2.12-x86_64 /usr/local/mysql安装依赖命令

shell> yum install libaio

3、创建mysql用户、用户组、配置环境变量

shell> groupadd -g 27 -o -r mysql

#注释:groupadd -g27 和 -o 选项用于分配一个非唯一的 group ID (GID), -r 选项使组成为系统组。

shell> useradd -M -N -g mysql -o -r -d /usr/local/mysql/data -s /bin/false -c "MySQL Server" -u 27 mysql

#注释 -M 选项为防止创建用户主目录

# -N 选项表示应该将用户添加到 -g 选项指定的group中。

# -o 和 -u 27选项分配一个非唯一用户ID (UID)。

# -r 和 -s /bin/false 选项创建的用户不需要登录服务器主机。mysql用户仅用于所有权目的,而不用于登录。

# -d 选项指定用户登录目录,该目录设置为MySQL数据目录路径。此次安装 本机mysql的数据目录为 /usr/local/mysql/data (安装目录可根据实际需求更改)

# -c 选项指定了一个描述,mysql用户 的注释

shell> export PATH=/usr/local/mysql/bin:$PATH #将 mysql bin目录添加至系统环境变量创建用于导入和导出操作的安全目录

为了限制文件特权的范围,创建一个用户可以安全地使用文件特权进行导入和导出操作的目录。在此部署中,创建的目录名为mysql-files

shell> cd /usr/local/mysql #进入mysql目录

shell> mkdir mysql-files #创建文件夹

shell> chown mysql:mysql mysql-files #将 mysql-files 文件夹的 所属组、所属用户 配置为 mysql组、mysql用户

shell> chmod 750 mysql-files #将 mysql文件夹权限配置为 750 即 所属用户拥有(读、写、执行)权限;所属组拥有(读)权限;其他用户无权限

# (linux文件、文件夹权限本文不做详细讲解)

4、初始mysql配置创建mysql配置文件、并分配权限

shell> cd /etc

shell> touch my.cnf #创建 mysql 配置文件 my.cnf

shell> chown root:root my.cnf #将mysql 配置文件的所属组、所属用户 配置为 root组、root用户

shell> chmod 644 my.cnf #将mysql配置文件的权限设置为 644 即 所属用户拥有(读、写)权限;所属组拥有(读)权限;其他用户拥有(读)权限

shell> vim my.cnf #编辑配置文件 配置内容如下my.cnf 文件内容

[mysqld]

datadir=/usr/local/mysql/data # mysql数据存储目录

socket=/tmp/mysql.sock

port=3306

log-error=/usr/local/mysql/data/localhost.localdomain.err

user=mysql #固定用户

secure_file_priv=/usr/local/mysql/mysql-files #设置导入导出文件目录

local_infile=OFF #为了避免加载数据的本地版本可能出现的安全问题,请确保默认启用local_infile

max_connections = 200 # 支持的最大并发链接数,这个根据实际业务需求去设置

query_cache_size = 100M #指定MySQL查询缓冲区的大小,本机内存为2G 设置100M左右即可

thread_cache_size = 15 # 缓存的最大线程数,本机内存2G 设置15个左右即可

wait_timeout = 20 #(秒)指定一个请求的最大连接时间,默认为28800 (八小时)

expire_logs_days = 30 #超过30天的binlog删除

long_query_time = 1 #慢查询时间 超过1秒则为慢查询

slow_query_log_file = /etc/mysql/slow.log #查询日志文件

lower_case_table_names = 1 #不区分大小写初始化数据目录

shell> cd /usr/local/mysql

shell> mkdir data #床架mysql用于存放数据的文件夹

shell> chmod 750 data #设置权限

shell> chown mysql:mysql data #分配文件夹 所属组、所属用户

shell> bin/mysqld --defaults-file=/etc/my.cnf --initialize #初始化数据目录

#初始化的信息输出到了my.cnf中配置的 log-error 所在的错误日志文件中,其中包括初始的随机密码;结果如下图

5、mysql启动服务配置

shell> cd /usr/lib/systemd/system

shell> touch mysqld.service #创建mysql服务文件

shell> chmod 644 mysqld.service #配置权限

shell> vim mysqld.service #编辑服务文件

#=================mysqld.service 文件内容 start=================

[Unit]

Description=MySQL Server

Documentation=man:mysqld(7)

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

Type=forking

PIDFile=/usr/local/mysql/data/mysqld.pid #pid文件为 mysql存放数据的文件夹下

TimeoutSec=0 # 为mysqld服务禁用系统的服务启动和停止超时逻辑。

# 启动主服务 指定启动服务文件 默认配置文件 pid文件

ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --daemonize --pid-file=/usr/local/mysql/data/mysqld.pid $MYSQLD_OPTS

EnvironmentFile=-/etc/sysconfig/mysql

# Sets open_files_limit

LimitNOFILE = 5000

Restart=on-failure

RestartPreventExitStatus=1

PrivateTmp=false

#======================== end ========================================配置 systemd tmpfiles特性

#配置 systemd tmpfiles特性

shell> cd /usr/lib/tmpfiles.d

shell> touch mysql.conf

shell> chmod 644 mysql.conf

shell> vim mysql.conf

#==========mysql.conf 文件内容===============

d /usr/local/mysql/data 0750 mysql mysql -

#=============== end ================设置mysql服务开机启动、启动服务、查看服务启动状态、停止服务

shell> systemctl enable mysqld.service #设置服务开机启动 或者 systemctl enable mysqld

shell> systemctl start mysqld.service #开启服务

shell> systemctl status mysqld.service #查看服务当前状态

shell> systemctl stop mysqld.service #停止服务服务启动成功状态

6、重置mysql root账户密码

shell> cd /usr/local/mysql/bin #进入mysql bin目录

shell> ./mysql -uroot -p

#Enter password: 然后输入刚刚的临时密码 进入mysql命令行

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';

#Query OK, 0 rows affected (0.00 sec) 修改成功

7、开启防火墙端口

shell> firewall-cmd --zone=public --add-port=3306/tcp --permanent # --permanent选项为永久生效,没有此参数重启后失效

shell> firewall-cmd --reload #重新加载防火墙

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值