Linux(CentOS)安装MySQL教程

主要参考链接 教程

1. 准备工作

1.1 安装CentOS虚拟机

教程点击

1.2 将CentOS虚拟机设置为静态IP,否则你每次重启虚拟机后连接数据库都要重新查IP

教程点击

1.3 如果有安装过MySQL,请先卸载MySQL

教程点击

1.4 虚拟机执行命令su切换到root账号(输入密码时不会显示密码,实际已经输入)
xml 复制代码
 su root
2 安装MySQL(本文以CentOS 7下安装MySQL 8为例)
2.1 删除mariadb数据库软件包
2.1.1 执行命令rpm -qa|grep mari查询mariadb数据库软件包
复制代码
    mariadb是CentOS自带的数据库,装MySQL前要先卸载,
    但不一定每一个CentOS镜像都有自带mariadb数据库,如果查到没有则直接跳过此步
sql 复制代码
#查询mariadb数据库软件包
rpm -qa|grep mari
2.1.2 执行命令rpm -e --nodeps 包名来删除软件包
sql 复制代码
#删除软件包
rpm -e --nodeps marisa-0.2.4-4.el7.x86_64  #包名用你自己查询到的
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64  #包名用你自己查询到的
2.2 安装MySQL
2.2.1 执行命令wget -c 链接下载rpm源(根据CentOS版本自行选择)
sql 复制代码
#CentOS8 mysql8 rpm源
wget -c https://dev.mysql.com/get/mysql80-community-release-el8-5.noarch.rpm

#CentOS7 mysql8 rpm源
wget -c https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm

#CentOS6 mysql8 rpm源
wget -c https://dev.mysql.com/get/mysql80-community-release-el6-7.noarch.rpm
 
#如果wget命令无效,先执行下面这个命令安装wget
yum -y install wget
2.2.2 执行命令rpm -ivh 包名安装rpm源(根据下载的rpm源自行选择)
sql 复制代码
#CentOS8 安装mysql8
rpm -ivh mysql80-community-release-el8-5.noarch.rpm
#CentOS7 安装mysql8
rpm -ivh mysql80-community-release-el7-7.noarch.rpm
#CentOS6 安装mysql8
rpm -ivh mysql80-community-release-el6-7.noarch.rpm
2.2.3 执行命令yum -y install mysql-server安装mysql服务
sql 复制代码
#安装mysql服务
yum -y install mysql-server
2.3 安装mysql服务
sql 复制代码
yum -y install mysql-server
2.3.1 执行命令systemctl start mysqld启动MySQL
sql 复制代码
#查看mysql运行状态
systemctl status mysqld
#启动mysql
systemctl start mysqld
#停止mysql 
systemctl stop mysqld
#重启mysql 
systemctl restart mysqld  
2.3.2 执行命令systemctl enable mysqld开启MySQL开机自启动
sql 复制代码
#开启mysql开机自启动
systemctl enable mysqld
#关闭mysql开机自启动
systemctl disable mysqld
2.4 设置MySQL密码
2.4.1 执行下方命令获取临时密码
sql 复制代码
//获取MySQL临时密码
grep 'temporary password' /var/log/mysqld.log

2.4.2 执行命令mysql -uroot -p登录MySQL(密码是上面获取的临时密码)

sql 复制代码
//登录mysql
mysql -uroot -p

例如:下面的截图,其中 -uroot是要连在一块的

2.4.3 首次登陆,需要重新设置新密码,可以参考此教程,点击链接
(1) 更改密码弱口令设置,设置简单密码
sql 复制代码
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
(2) 设置新的密码:
sql 复制代码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
#注意 此处BY 后面的root是修改后的密码
mysql> flush privileges;
(3) 配置远程登录:
sql 复制代码
mysql> grant all privileges on *.* to root@'%' identified by 'root';
mysql> flush privileges;
(5) 至此 算是安装完毕,如果有问题 就重启mysql :
sql 复制代码
systemctl restart mysqld
3、安装过程遇到的问题
3.1 MySQL问题: mysql-community-libs-compat-5.7.41-1.el7.x86_64.rpm 的公钥尚未安装 (参考链接 教程

解决办法:

sql 复制代码
运行命令
[root@localhost ~]# rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
重新安装
[root@localhost ~]# yum -y install mysql-server
3.2 虚拟机中修改文件出现却无法保存了,出现了警告:
复制代码
    E45:已设定选项 'readonly' (请加 ! 强制执行)
    
   原因分析: 这是因为当前的用户的权限不够

   解决办法:执行代码的命令前面加上 sudo
   或者切换当前系统的用户    直接        su root
相关推荐
疯狂吧小飞牛5 小时前
GPG基础指令
linux·服务器·网络
C++ 老炮儿的技术栈5 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
Zzzzmo_5 小时前
【MySQL】JDBC(含settings.xml文件配置/配置国内镜像以及pom.xml文件修改)
数据库·mysql
todoitbo6 小时前
用虚拟局域网打通 Win/Mac/Linux 三端:跨设备协作的实用方案
linux·运维·macos
源远流长jerry6 小时前
RDMA 基本操作类型详解:从双端通信到单端直访
linux·网络·tcp/ip·ip
FirstFrost --sy6 小时前
MySQL内置函数
数据库·mysql
eggwyw7 小时前
MySQL-练习-数据汇总-CASE WHEN
数据库·mysql
Sylvia-girl7 小时前
Linux下的基本指令1
linux·运维·服务器
wyt5314297 小时前
Redis的安装教程(Windows+Linux)【超详细】
linux·数据库·redis
17(无规则自律)8 小时前
【Linux驱动实战】:字符设备之ioctl与mutex全解析
linux·c语言·驱动开发·嵌入式硬件