linux安装MYSQL

检查和删除现有的MySQL或MariaDB

首先,检查系统中是否已经安装了MySQL或MariaDB。如果已经安装,需要先将其删除。

复制代码
# 检查是否安装了MySQL
rpm -qa | grep mysql

# 检查是否安装了MariaDB
rpm -qa | grep mariadb

# 删除MariaDB
rpm -e --nodeps mariadb-libs

下载和解压MySQL

从MySQL官方网站下载适合你系统的MySQL安装包,并将其上传到目标服务器。

复制代码
# 下载MySQL安装包
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz

# 解压安装包
tar -xvf mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz

# 移动并重命名解压后的文件夹
mv mysql-8.0.31-linux-glibc2.12-x86_64 /usr/local/mysql

创建数据目录和用户

创建MySQL数据存放目录,并创建MySQL用户和用户组。

复制代码
# 创建数据目录
mkdir -p /data/mysql

# 创建用户组和用户
groupadd mysql
useradd -r -g mysql mysql

# 赋予权限
chown mysql:mysql -R /data/mysql

配置MySQL

编辑MySQL配置文件*/etc/my.cnf*,如果文件不存在则新建。

复制代码
im /etc/my.cnf

# 添加以下内容
[mysqld]
bind-address = 0.0.0.0
port = 3306
user = mysql
basedir = /usr/local/mysql
datadir = /data/mysql
socket = /tmp/mysql.sock
log-error = /data/mysql/mysql.err
pid-file = /data/mysql/mysql.pid
character_set_server = utf8mb4
symbolic-links = 0
explicit_defaults_for_timestamp = true

初始化和启动MySQL

初始化MySQL并启动服务。

复制代码
# 进入MySQL安装目录的bin目录
cd /usr/local/mysql/bin

# 初始化MySQL
/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql --initialize

# 查看初始密码
cat /data/mysql/mysql.err

# 启动MySQL服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
service mysql start

修改root密码和开启远程访问

登录MySQL并修改root密码,开启远程访问权限。

复制代码
# 登录MySQL
/usr/local/mysql/bin/mysql -u root -p

# 修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
FLUSH PRIVILEGES;

# 开启远程访问
UPDATE user SET host='%' WHERE user='root';
FLUSH PRIVILEGES;

检查安装路径和环境

确保MySQL的安装路径和环境配置正确。

复制代码
# 打开profile文件
vi /etc/profile

# 添加MySQL路径到环境变量
export PATH=$PATH:/usr/local/mysql/bin

# 重新加载配置文件
source /etc/profil
相关推荐
weixin_462446232 分钟前
解决MongoDB官网下载过慢问题
数据库·mongodb
青蛙大侠公主9 分钟前
Spring事务
java·数据库·spring
老华带你飞14 分钟前
校务管理|基于springboot 校务管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·spring
帝吃藕和38 分钟前
MySQL 知识点复习- 6. ORDER BY, GROUP BY
mysql
zzz大王1 小时前
sql 五十题 26-30
数据库·sql
小张程序人生1 小时前
《系统掌握 ShardingSphere-JDBC:分库分表、读写分离、分布式事务一网打尽》
java·mysql
小尧嵌入式1 小时前
QT软件开发知识点流程及记事本开发
服务器·开发语言·数据库·c++·qt
子夜江寒1 小时前
SQL 从基础操作到高级查询
数据库·sql
Dxy12393102161 小时前
MySQL快速入门
数据库·mysql
NaiLuo_452 小时前
MySQL表的约束
数据库·sql·mysql