当前位置:网站首页>在CentOS下安装MySQL
在CentOS下安装MySQL
2022-08-01 23:44:00 【bhegi_seg】
首先下载好rpm离线包,然后解压到CentOS下

放到CentOS下,解压到任意目录下

tar xf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar
[[email protected] local]# pwd
/usr/local
其中:
mysql-community-client 客户端
mysql-community-devel 开发库
mysql-community-common 服务端和客户端的公共文件
mysql-community-embedded 嵌入式
mysql-community-serve 服务端
mysql-community-test 测试组件
mysql-community-libs 共享库
mysql-community-libs-compat MySQL之前版本的共享兼容库
首先限制mariadb相关软件包,否则mysql不会安装成功
yum remove mariadb-libs
之后按照顺序安装四个包
rpm -ivh
mysql-community-common- 5.7.14-1.el7.x86_64.rpm
mysql-community-libs-5.7.14- 1.el7.x86_64.rpm
mysql-community-client-5.7.14-1.el7.x86_64.rpm
mysql-community-server-5.7.14-1.el7.x86_64.rpm

四个包安装完成后,启动mysql服务
systemctl start mysqld
systemctl enable mysqld

获取随机密码
grep 'temporary password' /var/log/mysqld.log

进入mysql终端后,修改密码
进入MySQL终端:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root'; 如果报错,说明密码太短, MySQL没有认证成功,可以修改 认证规则:
set global validate_password_policy=0;
set global validate_password_length=1;
注意,8.0版本这两个全局属性名称变化为: validate_password.policy和validate_password.length
所以修改命令为:
set global validate_password.policy=0;
set global validate_password.length=1;
再次修改就OK了

通用二进制安装mysql

先上传离线包,并且解压缩
给包找好解压的位置
tar xf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /usr/local
解压完成就是下面图片的样子

创建mysql组和用户
[[email protected] local]# groupadd mysql -r -g 306
[[email protected] local]# useradd -r -g mysql -s /bin/false -u 306 mysql

为mysql创建软链接
ln -sv mysql-5.7.30-linux-glibc2.12-x86_64 mysql
"mysql" -> "mysql-5.7.30-linux-glibc2.12-x86_64"
#修改mysql的权限
chown -R mysql.mysql mysql/*

初始化mysql,获取随机密码

查看一下配置文件
vim /etc/init.d/mysql.server

写上这两个配置文件(原配置文件默认没有写)
启动mysql服务
systemctl start mysql.server
这个时候启动服务会产生报错,这里报错是因为之前删mariadb的时候没有删干净,mariadb的目录与mysql目录冲突了
所以修改一下mysql提供主配置文件

修改圈出来的配置文件路径
之前忘记截图了,所以前两个已经改好了
#这是后面两个
log-error=/var/log/mysql.log
pid-file=/data/mysql/mysql.pid
为mysql提供服务脚本
启动mysql服务,但会报错
所以检查selinux和防火墙有没有关闭
临时停掉selinux:# setenforce 0
永久关闭selinux:
#vi /etc/sysconfig/selinux
查看防火墙状态:# systemctl is-active firewalld.service
永久关闭防火墙:# systemctl disable firewalld

再次启动mysql服务
这里也会报错,说未找到命令,但使用绝对路径就可以进去
[[email protected] ~]# /usr/local/mysql/bin/mysql -uroot -p'fAbouq=:W4Lv'
进入之后修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
但每次用绝对路径进入很麻烦,所以修改一下
配置环境变量
vim /etc/profile.d/mysql.sh
export PATH=$PATH:/usr/local/mysql/bin
这个配置完之后需要重新启动
#当前生效
source /etc/profile.d/mysql.sh

使用mysql -uroot -p进入就可以了

MySQL体系结构
!!!mysql各个存储引擎概述:
innodb存储引擎:
面向oltp(online transaction processing)、行锁、支持外键、非锁定读、默认采用repeaable级别(可重复读)通过next-keylocking策略避免幻读、插入缓冲、二次写、自适应哈希索引、预读
myisam存储引擎:
不支持事务、表锁、全文索引、适合olap(在线分析处理),其中myd:放数据文件,myi:放索引文件
ndb存储引擎:
集群存储引擎,share nothing,可提高可用性
memory存储引擎:
数据存放在内存中,表锁,并发性能差,默认使用哈希索引
archive存储引擎:
只支持insert和select zlib算法压缩1:10,适合存储归档数据如日志等、行锁
maria存储引擎:
目的取代myisam、缓存数据和索引、行锁、mvcc
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
- 20220725资料更新
- 6133. Maximum number of packets
- When using DocumentFragments add a large number of elements
- Flink学习第五天——Flink可视化控制台依赖配置和界面介绍
- Access the selected node in the console
- Data Organization --- Chapter 5 Trees and Binary Trees --- The Concept of Binary Trees --- Application Questions
- 技术分享 | 接口测试中如何使用Json 来进行数据交互 ?
- [Camp Experience Post] 2022 Cybersecurity Summer Camp
- @Scheduled注解详解
- 1个月写900多条用例,二线城市年薪33W+的测试经理能有多卷?
猜你喜欢

伸展树的特性及实现

获取小猪民宿(短租)数据

cdh6打开oozieWeb页面,Oozie web console is disabled.

云原生DevOps环境搭建

How do programmers solve online problems gracefully?

深度学习基础-基于Numpy的循环神经网络(RNN)实现和反向传播训练

Flink学习第三天——一文带你了解什么是Flink流?

ICLR 2022 Best Paper: Partial Label Learning Based on Contrastive Disambiguation

Building a cloud-native DevOps environment

程序员如何优雅地解决线上问题?
随机推荐
云原生DevOps环境搭建
Docker搭建Mysql主从复制
计算两点之间的距离
C语言——分支语句和循环语句
Share an interface test project (very worth practicing)
Is TCP reliable?Why?
邻接表与邻接矩阵
软件测试之移动APP安全测试简析,北京第三方软件检测机构分享
路径压缩、、
yay 报错 response decoding failed: invalid character ‘<‘ looking for beginning of value;
@Transactional 注解使用详解
分享一份接口测试项目(非常值得练手)
检查点是否在矩形内
在CDH的hue上的oozie出现,提交 Coordinator My Schedule 时出错
cdh的hue上oozie启动报错,Cannot allocate containers as requested resource is greater than maximum allowed
UI自动化测试框架搭建-标记性能较差用例
FAST-LIO2代码解析(二)
GIF制作-灰常简单的一键动图工具
字节跳动面试官:请你实现一个大文件上传和断点续传
一道golang中关于iota的面试题