首页 > 数据库 >MySQL 5.7.20 二进制版本的安装

MySQL 5.7.20 二进制版本的安装

时间:2023-01-14 17:57:43浏览次数:51  
标签:20 5.7 -- data MySQL DB mysql root

安装环境:

  数据库版本:

    5.7.20

  操作系统版本: 

    CentOS 7.9

安装步骤:

1. 下载并上传MySQL软件到/server/tools

[root@DB_MySQL ~]# mkdir -p /server/tools
[root@DB_MySQL ~]# cd /server/tools/

2. 解压MySQL软件,并将其移动到/application/mysql目录下

[root@DB_MySQL tools]# ls
mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
[root@DB_MySQL tools]# tar -xf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
[root@DB_MySQL tools]# mkdir -p /application/mysql
[root@DB_MySQL tools]# mv mysql-5.7.20-linux-glibc2.12-x86_64/* /application/mysql/

3. 用户的创建,处理的原始环境

[root@DB_MySQL mysql]# rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
[root@DB_MySQL mysql]# yum remove mariadb-libs-5.5.68-1.el7.x86_64 -y
[root@DB_MySQL mysql]# rpm -qa | grep mariadb
[root@DB_MySQL mysql]# useradd -s /sbin/nologin mysql
[root@DB_MySQL mysql]# id mysql
uid=1000(mysql) gid=1000(mysql) 组=1000(mysql)

4. 设置环境变量

[root@DB_MySQL mysql]# vim /etc/profile
...行末
export PATH=/application/mysql/bin:$PATH
# 初始化配置文件
[root@DB_MySQL mysql]# source /etc/profile
# 使用mysql -V命令测试环境变量是否设置成功,成功执行结果如下
[root@DB_MySQL mysql]# mysql -V
mysql  Ver 14.14 Distrib 5.7.20, for linux-glibc2.12 (x86_64) using  EditLine wrapper

5. 创建数据路径并挂载

5.1  添加一块新磁盘模拟数据盘

 PS:

  生产环境中,根据运维经验应该先进行磁盘的配置,在进行MySQL的软件按照工作。

5.2  格式化并挂载磁盘
[root@DB_MySQL ~]# fdisk -l
# 格式化磁盘
[root@DB_MySQL ~]# mkfs.xfs /dev/sdb
[root@DB_MySQL ~]# mkdir /data
# 查看磁盘的UUID序列号,这里建议UUID挂载方式
[root@DB_MySQL ~]# blkid
/dev/sdb: UUID="b7d12ef9-69a1-4e9f-a677-d8650f61cbf8" TYPE="xfs"
# 将该UUID写入/etc/fstab文件中,永久挂载
[root@DB_MySQL ~]# vim /etc/fstab
...行末
UUID="b7d12ef9-69a1-4e9f-a677-d8650f61cbf8"     /data   xfs     defaults
0 0
# 挂载并查看是否成功
[root@DB_MySQL ~]# mount -a
[root@DB_MySQL ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 979M     0  979M    0% /dev
tmpfs                    991M     0  991M    0% /dev/shm
tmpfs                    991M  9.5M  981M    1% /run
tmpfs                    991M     0  991M    0% /sys/fs/cgroup
/dev/mapper/centos-root   50G  4.7G   46G   10% /
/dev/mapper/centos-home   67G   33M   67G    1% /home
/dev/sda1               1014M  138M  877M   14% /boot
tmpfs                    199M     0  199M    0% /run/user/0
/dev/sdb                  20G   33M   20G    1% /data   <--- 挂载到/data/目录下成功

6. 授权

[root@DB_MySQL tools]# mkdir /data/mysql/data -p
[root@DB_MySQL tools]# chown -R mysql.mysql /application/*
[root@DB_MySQL tools]# chown -R mysql.mysql /data/

7. 初始化数据

7.1 MySQL 5.6版本
/application/mysql/scripts/mysql_install_db
7.2 MySQL 5.7版本
7.2.1 生成随机密码初始化方式(不推荐使用)
[root@DB_MySQL mysql]# mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data
...
2023-01-14T17:11:54.220022Z 1 [Note] A temporary password is generated for root@localhost: oL3w%jdyJm>C

说明:
--initialize 参数:

  • 对于密码复杂度进行定制:12位,4种
  • 密码过期时间: 180
  • 给root@localhost用户设置临时密码
7.2.2 无限制,无临时密码 --initialize-insecure
[root@DB_MySQL mysql]# mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data

8. 启动数据库

8.1 配置文件的准备

[root@DB_MySQL mysql]# cat > /etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/application/mysql
datadir=/data/mysql/data
socket=/tmp/mysql.sock
server_id=6
port=3306
[mysql]
socket=/tmp/mysql.sock
EOF
8.2 启动方式
8.2.1 sys-v
[root@DB_MySQL mysql]# cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@DB_MySQL init.d]# /etc/init.d/mysqld start
Starting MySQL.Logging to '/data/mysql/data/DB_MySQL.localdomain.err'.
 SUCCESS!
[root@DB_MySQL init.d]# netstat -anptu | grep 3306
tcp6       0      0 :::3306                 :::*                    LISTEN      1687/mysqld
8.2.2 systemd

注意:

   sysv方式启动过的话,需要提前关闭,才能以下方式登录

cat > /etc/systemd/system/mysqld.service <<EOF
[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]
WantenBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
EOF

  执行完后,可以使用systemctl相关命令启动MySQL应用

# 打印日志到屏幕启动
/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf

小结:  

  # 如何分析处理MySQL数据库无法启动
    without updating PID 类似错误
    查看/data/mysql/data 主机名.err
    [ERROR] 上下文
  可能情况:
    /etc/my.cnf 路径不对等
    /tmp/mysql.sock文件修改过或删除过
    数据目录权限不是mysql
    参数改错了

标签:20,5.7,--,data,MySQL,DB,mysql,root
From: https://www.cnblogs.com/xmtxh/p/17052273.html

相关文章

  • Media Encoder 2021 for Mac(ame 2021) v15.4.1中文直装版
    MediaEncoder2021中文版是一款优秀的视频音频编码器,能够将多种设备格式的音频或视频进行导出,提供了丰富的硬件设备编码格式设置以及专业设计的预设设置,方便用户导出与特定......
  • MySql学习笔记--进阶05
          ......
  • 图文结合带你搞懂MySQL日志之relay log(中继日志)
    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。GreatSQL是MySQL的国产分支版本,使用上与MySQL一致。作者:KAiTO文章来源:GreatSQL社区原创什么......
  • x210-2023-01-13
    1、在使用gcchello.c-ohello的这种默认情况下,实际上是动态链接,想要静态链接,使用gcc-statichello.c-ohello。2、图1立即数缺#;图2由于立即数不符合整除4;   ......
  • 20 个 JS 工具函数助力高效开发
    日常开发中,面对各种不同的需求,我们经常会用到以前开发过的一些工具函数,把这些工具函数收集起来,将大大提高我们的开发效率。1、校验数据类型export const typeOf = fu......
  • P4220 题解
    前言题目传送门!更好的阅读体验?思路代码为了使代码更容易通过,可以像我一样膜拜大佬,获得随机种子,通过的概率更大。#include<iostream>#include<cstdio>#include<......
  • 算法--2023.1.14
    1.力扣435--无重叠区间classSolution{publicinteraseOverlapIntervals(int[][]intervals){Arrays.sort(intervals,(o1,o2)->(o1[1]-o2[1]));......
  • 2023年了,这些Linux命令得会吧!还不收藏起来?
    一、关机与重启指令(1)shutdown-关机语法:shutdownshutdown-hnow【立即关机】shutdown-h1【1分钟后关机,shutdown后不填默认一分钟后关机】shutdown-rnow【立即重启......
  • 2023.1.14
    P5501[LnOI2019]来者不拒,去者不追一道二次离线莫队的模板题,第二次离线后用分块就可以做到\(O(1)\)询问。P4207[NOI2005]月下柠檬树建系之后我们只考虑一半的面积,......
  • Windows10安装卸载Mysql步骤和方法
    (目录)1、彻底卸载Mysql进入控制面板-卸载程序,卸载MySQL(注意所有以mysql开头的都卸载掉);打开C盘-programdata删除MySQL的文件夹;进入c盘-ProgramFiles删除MySQL文件......