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

总结

回到顶部

相关推荐
FYKJ_2010几秒前
django药饮个性化推荐系统54839-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·typescript·spark·django
IT枫斗者枫哥5 小时前
MyBatis一对多分页:LIMIT 20,为什么凑不齐20个订单?
java·数据库
Flynt5 小时前
"MySQL搜不动就上ES"?我先在50万行数据上测了它自带的ngram全文索引
mysql·elasticsearch·搜索引擎
律宏阔5 小时前
WSL Docker 端口明明空闲,但就是绑不上端口
linux·windows
律宏阔5 小时前
WSL 突然断网,无法 ping 内网或外网
linux·windows
穷人小水滴5 小时前
用容器编译 VirtualBox 虚拟机软件 (ArchLinux, podman)
linux·容器·virtualbox
Y005 小时前
PostgreSQL 的锁:为什么你的 ALTER TABLE 会卡住,以及怎么查
数据库·postgresql
imDwAaY5 小时前
Redo Log 和 Binlog 为什么需要两阶段提交?
后端·mysql
灰原喜欢柯南5 小时前
OceanBase 运维管理知识点——OCP 监控、诊断与变更控制
数据库·oceanbase
码农-0045 小时前
Springboot 集成 Ehcache操作数据库显示SQL语句设置
数据库·spring boot·sql