Linux安装Mysql详细教程(两种安装方法)

devtools/2024/10/9 17:28:11/

Linux之Mysql安装配置

  • 第一种:Linux离线安装Mysql(提前手动下载好tar.gz包)
  • 第二种:通过yum安装配置Mysql(服务器有网络)

第一种:tar.gz包安装

1、 查看是否已经安装 Mysql
rpm -qa | grep mysql

如果没有什么返回信息,说明没有安装 Mysql,那么直接进入2

2、下载官方 Mysql 包 mysql.com/archives/community/" rel="nofollow">官方下载地址

选择对应的包 如下mysql5.7(最常用)
在这里插入图片描述

3. 上传到服务器后解压(解压后可删除安装包,节省空间)

一般放在在/usr/local目录下

# 解压文件至/usr/local/目录
tar -zxvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
# 重命名为 mysql
mv /usr/local/mysql-5.7.20-linux-glibc2.12-x86_64/ /usr/local/mysql

解压重命名后目录一般是这样的
在这里插入图片描述

4、创建用户组

至于为什么要创建用户和组可以看看这篇 Linux下安装Mysql为什么要创建对应的用户和用户组

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

分配用户组

chown -R mysql /usr/local/mysql/ # 将文件的所有属性改为 mysql 用户
chgrp -R mysql /usr/local/mysql/ # 将组属性改为 mysql
5.创建数据目录并赋予权限
mkdir -p /data/mysql #数据目录
chown mysql:mysql -R /data/mysql
6.修改配置文件 vim /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 config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
7.初始化数据库

参数: --basedir 为mysql解压目录,–datadir 为mysql数据存放目录。(注意安装路径是否一致)

cd /usr/local/mysql/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

查看初始密码

cat /data/mysql/mysql.err

密码已经生成
在这里插入图片描述
注:在初始化数据库时可能报缺少xx动态库的错误
如:error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决方法:
第1步:查看是否安装了libaio,无返回则说明未安装,执行步骤2

rpm -qa|grep libaio

第2步:切换到root用户,使用命令yum install -y libaio进行安装

mysql_85">8. 加入到系统服务并启动mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
service mysql start

在这里插入图片描述

登录mysql,一定要开启服务后才能登陆

/usr/local/mysql/bin/mysql -u root -p

在这里插入图片描述
登录成功后会提示你重置密码

# 修改密码,SQL语句后面的分号不能丢
ALTER USER 'root'@'localhost' IDENTIFIED BY '1234';
FLUSH PRIVILEGES;       #刷新 
退出 quit

重启服务 service mysql restart
再次登陆 /usr/local/mysql/bin/mysql -u root -p //输入刚修改的密码1234敲回车键
到此mysql已经安装完成了
在用工具连接mysql时提示:
MySQL 异常: "Host 'xxx' is not allowed to connect to this MySQL server"
解决:
登录mysql,刷新规则允许外部访问
host修改成%表示,所有主机都可以通过root用户访问数据库

use mysql      #选择访问mysql库
update user set host = '%' where user = 'root';      #使root能再任何host访问
FLUSH PRIVILEGES;       #刷新 

第二种:通过yum在线安装Mysql

1、找到对应linux的版本进行下载

[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)

下载和安装mysql

下载地址:https://dev.mysql.com/downloads/repo/yum/ 或 http://repo.mysql.com
#使用wget下载mysql
wget http://repo.mysql.com/mysql80-community-release-el7.rpm

如果显示wget未找到命令,则需要先安装wget:
yum -y install wget,然后再次执行上面命令, 使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。
在这里插入图片描述
结果图
在这里插入图片描述
2. 第二步 安装
(1) 通过yum安装方法,会直接添加mysql环境变量和启动服务

yum -y install mysql80-community-release-el7.rpm

在这里插入图片描述
(2) 安装MySQL服务器:community-server

yum -y install mysql-community-server

在这里插入图片描述
3、第三步 启动服务并查看服务状态

systemctl start mysqld        #一定要启动服务!
systemctl status mysqld      #查看服务状态

在这里插入图片描述
4、第四步 获取密码
登录 MySQL 必须要通过密码,此时 root 用户的密码可以通过以下命令在日志文件中获取:

grep "password" /var/log/mysqld.log

在这里插入图片描述
5、第五步 登录并求改密码
(1)登录
在这里插入图片描述
(2) 修改密码(修改规则)
在这里插入图片描述

MySQL 8.0+ 版本为以下方式:(规则修改)
set global validate_password.policy=0;
set global validate_password.length=4;MySQL 8.0+ 版本为以下方式:(密码修改)
ALTER USER 'root'@'localhost' IDENTIFIED BY '1234';

6、第六步 授权
授权远程用户连接

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

通过yum安装Mysql完毕!


http://www.ppmy.cn/devtools/38889.html

相关文章

常见的前端框架

常用的前端框架有以下几种: 模型 React:由Facebook开发的一款前端框架,采用虚拟DOM的概念,可高效地更新页面。Vue.js:一款轻量级的前端框架,易学易用,支持组件化开发和双向数据绑定。AngularJ…

论文阅读:《Sequence can Secretly Tell You What to Discard》,减少推理阶段的 kv cache

目前各类大模型都支持长文本,例如 kimi chat 以及 gemini pro,都支持 100K 以及更高的上下文长度。但越长的上下文,在推理过程中需要存储的 kv cache 也越多。假设,数据的批次用 b 表示,输入序列的长度仍然用 s 表示&a…

单片机智能灯控制系统源程序仿真原理图与论文全套资料

目录 1、设计描述 2、仿真图 3、程序 4、资料内容 资料下载地址:单片机智能灯控制系统源程序仿真原理图与论文全套资料下载 1、设计描述 设计了一款智能控制系统。 AT89C51LCD1602DS1302按键LED组成了这样一个完整的设计。 P2.0-P2.3 4个LED等代表庭院内的4…

【信息系统项目管理师】复习~第十三章

13. 资源管理 1.项目团队:是执行项目工作,以实现项目目标的一组人员,由为了完成项目而承担不同角色与职责的人员组成。 项目团队成员可能具备不同的技能,可能是全职的或兼职的,也可能随项目进展而增加或减少。尽管项…

SparkSQL概述

1.1. SparkSQL介绍 SparkSQL,就是Spark生态体系中的构建在SparkCore基础之上的一个基于SQL的计算模块。SparkSQL的前身不叫SparkSQL,而是叫做Shark。最开始的时候底层代码优化、SQL的解析、执行引擎等等完全基于Hive,总是Shark的执行速度要比…

从零开始学习C语言,常用语法一文打尽

C语言常用语法 前言hello world数据类型变量变量的命名规范变量的分类变量的作用域和生命周期 常量字面常量const修饰的常变量#define定义的标识符常量枚举常量 字符串转义字符注释选择语句if循环语句while函数数组 前言 这篇博客旨在帮助零基础的朋友们入门,我会尽…

【C语言项目】贪吃蛇(上)

个人主页 ~ gitee仓库~ 欢迎大家来到C语言系列的最后一个篇章–贪吃蛇游戏的实现,当我们实现了贪吃蛇之后,我们的C语言就算是登堂入室了,基本会使用了,当然,想要更加熟练地使用还需要多多练习 贪吃蛇 一、目标二、需要…

linux文本三剑客之sed

目录 1、sed特点 1)sed命令格式 2)sed命令核心功能"增删改查" 2、sed命令执行过程 3、sed核心应用 1)sed-查找p 2)sed-删除d 3)sed-增加cai 4) sed-替换s 1、sed特点 sed stream editor 流编辑器…