Linux安装Mysql

文章目录

  • 前言
  • 一、下载
    • [1. 确认版本](#1. 确认版本)
      • [1.1 系统信息](#1.1 系统信息)
      • [1.2 glibc版本](#1.2 glibc版本)
    • [2. 下载](#2. 下载)
    • [3. 解压](#3. 解压)
  • 二、安装
    • [1. 创建用户组](#1. 创建用户组)
    • [2. 修改配置文件](#2. 修改配置文件)
    • [3. 初始化](#3. 初始化)
    • [4. 环境变量](#4. 环境变量)
    • [5. 验证](#5. 验证)
  • 三、启动服务
    • [1. 启动](#1. 启动)
    • [2. 登录](#2. 登录)
    • [3. 修改密码](#3. 修改密码)
    • [4. 允许远程访问](#4. 允许远程访问)
    • [5. 测试](#5. 测试)
    • 6.停止
  • 四、开机启动
  • 总结

前言

这里演示在Linux环境下安装Mysql8.0的全过程。


一、下载

1. 确认版本

需要先确定版本

1.1 系统信息

bash 复制代码
hostnamectl

1.2 glibc版本

bash 复制代码
rpm -qa|grep glibc

2. 下载

下载地址

tar包太大了,这里我们下载tar.xz

3. 解压

bash 复制代码
# 解压文件至/usr/local/目录
tar -xvf mysql-8.0.38-linux-glibc2.17-x86_64.tar.xz -C /usr/local/
# 重命名为 mysql
mv /usr/local/mysql-8.0.38-linux-glibc2.17-x86_64/ /usr/local/mysql

二、安装

1. 创建用户组

bash 复制代码
#创建用户组
groupadd mysql

#-r 参数表示 mysql 用户是系统用户,不可用于登录系统,创建用户 mysql 并将其添加到用户组 mysql 中
useradd -r -g mysql mysql

#新建目录
mkdir /usr/local/mysql/mariadb
mkdir -p /usr/local/mysql/lib/mysql

#分配用户组:将文件的所有属性改为 mysql 用户	将组属性改为 mysql 组
chown -R mysql:mysql /usr/local/mysql/
chmod 755 /usr/local/mysql/

2. 修改配置文件

bash 复制代码
vi /etc/my.cnf

[mysqld]
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/usr/local/mysql/mariadb/mariadb.log
pid-file=/usr/local/mysql/mariadb/mariadb.pid

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

3. 初始化

bash 复制代码
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql

生成的密码要记下来,后面用得到。

4. 环境变量

bash 复制代码
vi /etc/profile

export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin

source /etc/profile

5. 验证

java 复制代码
mysql --version

三、启动服务

1. 启动

bash 复制代码
cd /usr/local/mysql/support-files/
./mysql.server start

2. 登录

bash 复制代码
ln -s /usr/local/mysql/lib/mysql/mysql.sock /tmp/mysql.sock
mysql -u root -p

3. 修改密码

bash 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456a?';

4. 允许远程访问

bash 复制代码
# 选择数据库
use mysql;
# 最后授权 MySQL,允许远程用户登录访问 MySQL
update user set host = '%' where user = 'root';
# 刷新权限
flush privileges;

5. 测试

6.停止

bash 复制代码
cd /usr/local/mysql/support-files/
./mysql.server stop

四、开机启动

bash 复制代码
# 复制 mysql.server 至/etc/init.d/重命名为 mysqld
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

# 修改 vi /etc/init.d/mysqld 配置文件
# 修改内容: 46-47
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
# 添加系统服务(service)启动信息
chkconfig --add mysqld     # 服务名字为mysqld
#检查启动状态:
sudo systemctl is-enabled mysqld

总结

回到顶部

相关推荐
阮胜昌20 分钟前
MySQL 中的动态数据脱敏:无需更改应用程序即可保护敏感数据
android·mysql·adb
fb_123451 小时前
Linux三剑客超全精讲(grep+sed+awk)零基础入门|正则+实战面试题
linux·运维·服务器
小白说大模型2 小时前
AI驱动的个性化学习路径:知识图谱与知识点关联的存储与推理
大数据·人工智能·学习·mysql·机器学习·prompt·知识图谱
这个DBA有点耶2 小时前
多模数据库深度解读:从“多库拼装”到“一库多能”的架构演进
数据库·mysql·dba
火车叼位2 小时前
Bash 实现 IDE 式补全的组件与配置
linux·运维
潘正翔2 小时前
k8s高级_调度器Deployment
linux·运维·云原生·容器·kubernetes·jenkins·devops
H_oRIZoN_3 小时前
Linux入门DAY27(文件IO(系统调用)详解|open/read/write/lseek)
java·linux·服务器
程序员夏洛3 小时前
MySQL 默认的事务隔离级别是什么?为什么选择这个级别?
数据库·mysql
艺术留白3 小时前
MokaTest使用篇-SQL接口
数据库·sql
海兰3 小时前
【插件】Logbook 插件完全指南(适配 Ubuntu 24.04)
linux·运维·人工智能·ubuntu·agent·openclaw