Linux——MySQL数据库部署及自建数据库mysql-yum仓库

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 我们耳熟能详的软件,包括游戏、淘宝各类软件APP,都会用到数据库,数据库存储的数据包括:用户的账号密码,用户的金额余额,以及购物的记录收藏记录,以及游戏的装备信息,等级信息等,只要是信息都会存储在数据库中。

前言


数据库能做什么?

 我们耳熟能详的软件,包括游戏、淘宝各类软件APP,都会用到数据库,数据库存储的数据包括:用户的账号密码,用户的金额余额,以及购物的记录收藏记录,以及游戏的装备信息,等级信息等,只要是信息都会存储在数据库中。


数据库的安装部署


1、环境准备

关闭防火墙:

停止防火墙:systemctl    stop   firewalld

关闭防火墙开机自启:systemctl    disable     firewalld

关闭selinux:setenforce    0

关闭selinux开机自启:vim   /etc/selinux/config          修改:SELINUX=disabled

2、安装MySQL


2.1下载需要的RPM包

这里介绍的是RPM安装MySQL,centos8,centos9建议RPM安装MySQL。

首先在国内镜像网站下载需要的RPM包(Index of /mysql-repo/yum/mysql-8.0-community/el/9/x86_64/)。


通过wget命令进行下载需要的RPM包:

wget   http://mirrors.ustc.edu.cn/mysql-repo/yum/mysql-8.0-community/el/9/x86_64/mysql-community-server-8.0.33-1.el9.x86_64.rpm

wget   http://mirrors.ustc.edu.cn/mysql-repo/yum/mysql-8.0-community/el/9/x86_64/mysql-community-libs-8.0.33-1.el9.x86_64.rpm

wget   http://mirrors.ustc.edu.cn/mysql-repo/yum/mysql-8.0-community/el/9/x86_64/mysql-community-icu-data-files-8.0.33-1.el9.x86_64.rpm

wget   http://mirrors.ustc.edu.cn/mysql-repo/yum/mysql-8.0-community/el/9/x86_64/mysql-community-common-8.0.33-1.el9.x86_64.rpm

wget   http://mirrors.ustc.edu.cn/mysql-repo/yum/mysql-8.0-community/el/9/x86_64/mysql-community-client-plugins-8.0.33-1.el9.x86_64.rpm

wget   http://mirrors.ustc.edu.cn/mysql-repo/yum/mysql-8.0-community/el/9/x86_64/mysql-community-client-8.0.33-1.el9.x86_64.rpm


通过ls查看当前目录内容,可以看到这些我们需要的RPM包已经下载完成。


b56f8516b03f4b8cb11e69f281d4e858.png


也可以通过下载MySQL的仓库进行安装。

wget     http://mirrors.ustc.edu.cn/mysql-repo/yum/mysql-8.0-community/el/9/x86_64/mysql80-community-release-el9-1.noarch.rpm

yum  install  -y   mysql80-community-release-el9-1.noarch.rpm

yum   install  -y   mysql-community-server

2.2、安装相关软件以及MySQL服务

安装相关软件:yum install -y net-tools.x86_64 libaio  perl.x86_64

安装MySQL服务:yum install -y *.rpm  安装当前目录下的所有rpm包。

因为在root的家目录下我只有刚刚下载的MySQL的RPM包所有使用这个命令一键安装,如果仅仅安装mysql-community-server,会提示报错缺少相关程序。


2.3、启动MySQL服务

启动mysql服务:systemctl   start  mysqld

设置mysql服务开机自启:systemctl enable mysqld

查看mysql服务状态:systemctl status mysqld


ae47f059f439467cbf8b738332981cc2.png


2.4、查看默认mysql密码并用登录mysql

mysql服务启动后,会生成一个默认密码,这个密码会记录在MySQL的日志中,可以通过grep来过滤查看mysql日志。

查看默认mysql密码:grep 'password' /var/log/mysqld.log

在localhost后面不管出现什么字符,都是密码的内容。


f158c5ffa4c2460681f31802c7f380cc.png


通过复制该密码登录数据库。

mysql     -uroot    -p'kks&F_*WU9tf'

注意:-u后面紧跟账号,-p后面紧跟密码


50ffde5ca6324af4979cf32fb3d238ad.png

看到这个页面就代表登录成功


2.5、更改数据库管理员登录密码

数据库部署完成后不能够每次都去查默认的密码区登录数据库,这个时候需要更改成为我们自己的密码。

mysqladmin   -uroot  -p'kks&F_*WU9tf'     password   '需要更改的密码'

注意:-p后面紧跟密码,password后面要加空格再输入需要更改的密码,这里的密码要有大小写字母、特殊符号、数字。


9720ea680be9492a93e45b5ba77f0fb3.png


这个提示是警告提示不是错误提示就代表成功,可以用修改后的密码登录数据库了。


自建mysql-yum仓库

因为在网上下载包会比较慢,我们可以自建一个mysql的yum仓库供其他客户端进行本地下载,速度就想对比较快。


服务器端操作


1、下载安装ftp

yum   install  -y   vsftpd


2、准备ftp目录

mkdir   /var/ftp/mysql80


3、下载mysql仓库

上面介绍的

wget     http://mirrors.ustc.edu.cn/mysql-repo/yum/mysql-8.0-community/el/9/x86_64/mysql80-community-release-el9-1.noarch.rpm

yum  install  -y   mysql80-community-release-el9-1.noarch.rpm

4、仅下载不安装mysql

yum    install    -y    --downloadonly     mysql-community-server

这里下载成功后就是我们上面RPM安装的时候那六个包。


5、将下载好的RPM包复制到刚刚创建的ftp目录去

如果是按照第四步做的。这些包在 /var/cache/dnf/mysql80-community-22d3d3ecd3d92106/packages/*里,也可以通过find命令去查找。

我是用刚刚RPM安装的时候的包:

cp   -rf    ./*.rpm    /var/ftp/mysql80/

ls   /var/ftp/mysql80/     查看ftp目录下面的复制情况  


f6fc7af06255446c9399d9ff06cb29d0.png


6、创建依赖

createrepo  /var/ftp/mysql80/                创建依赖


830a840624a8478cbe069cdc0b0f6829.png


这里提示没有找到createrepo命令。


查找createrepo命令需要的安装包

yum provides createrepo


463dddbf3fe34f018d5e881214f8168f.png


 安装createrepo_c

yum install -y createrepo_c

再次使用createrepo命令进行创建依赖

createrepo  /var/ftp/mysql80/


fe23119dcc5e48a1bbef6fbadf4069ad.png


创建成功!


7、启动ftp服务

在启动之前需要对ftp开启允许匿名访问的配置

vim  /etc/vsftpd/vsftpd.conf                anonymous_enable=YES

启动ftp服务

systemctl  start   vsftpd

设置开机vaftpd自启

systemctl  enable    vsftpd

查看vsftpd状态

systemctl  status  vsftpd


8888851e3497450ead8ff8f3860fcd60.png

0fe264723966464c90024c4d20258e22.png


客户机操作(换一台新的虚拟机,关闭防火墙)


1、自建yum仓库

vim /etc/yum.repos.d/mysql80.repo


d59003269b40402f913b600b5d66bc58.png


2、安装mysql

yum  makecache        刷新yum仓库

yum install -y mysql-community-server        安装mysql

发现这次下载的mysql是从自建的yum仓库下载的安装包,速度很快。


fe128f06ef564908a8cac2a5f344198f.png


3、测试启动mysql服务,并修改默认密码,登录mysql

[root@localhost ~]# systemctl start mysqld.service

[root@localhost ~]# systemctl enable mysqld

[root@localhost ~]# systemctl status mysqld.service

查看默认密码

[root@localhost ~]# grep 'password' /var/log/mysqld.log

2023-06-12T05:57:27.580412Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: mUZNuXb>8z5+

修改密码

[root@localhost ~]# mysqladmin  -uroot  -p'mUZNuXb>8z5+'   password   'Sure.520'

mysqladmin: [Warning] Using a password on the command line interface can be insecure.

Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.


84e5df963b494e419c3e0c4d7cfdecdc.png


使用修改后的密码登录mysql。


2c5e8ab48a8f492883962db5f4631424.png


到这部署mysql服务器就介绍完了。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
7天前
|
存储 关系型数据库 MySQL
Mysql(4)—数据库索引
数据库索引是用于提高数据检索效率的数据结构,类似于书籍中的索引。它允许用户快速找到数据,而无需扫描整个表。MySQL中的索引可以显著提升查询速度,使数据库操作更加高效。索引的发展经历了从无索引、简单索引到B-树、哈希索引、位图索引、全文索引等多个阶段。
39 3
Mysql(4)—数据库索引
|
1天前
|
存储 关系型数据库 MySQL
如何在MySQL中创建数据库?
【10月更文挑战第16天】如何在MySQL中创建数据库?
|
5天前
|
SQL Oracle 关系型数据库
安装最新 MySQL 8.0 数据库(教学用)
安装最新 MySQL 8.0 数据库(教学用)
34 4
|
3天前
|
存储 SQL 关系型数据库
【入门级教程】MySQL:从零开始的数据库之旅
本教程面向零基础用户,采用通俗易懂的语言和丰富的示例,帮助你快速掌握MySQL的基础知识和操作技巧。内容涵盖SQL语言基础(SELECT、INSERT、UPDATE、DELETE等常用语句)、使用索引提高查询效率、存储过程等。适合学生、开发者及数据库爱好者。
13 0
【入门级教程】MySQL:从零开始的数据库之旅
|
6天前
|
存储 关系型数据库 MySQL
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
13 2
|
6天前
|
Ubuntu 关系型数据库 MySQL
Linux系统MySQL安装
【10月更文挑战第19天】本文介绍了在 Linux 系统上安装 MySQL 的步骤,包括安装前准备、安装 MySQL、启动 MySQL 服务、配置 MySQL 以及验证安装。适用于 Ubuntu/Debian 和 CentOS/Fedora 系统,提供了详细的命令示例。
|
8天前
|
关系型数据库 MySQL Java
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
这篇文章是关于如何使用Django框架配置MySQL数据库,创建模型实例,并自动或手动创建数据库表,以及对这些表进行操作的详细教程。
32 0
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
|
9天前
|
Java 关系型数据库 MySQL
springboot学习四:springboot链接mysql数据库,使用JdbcTemplate 操作mysql
这篇文章是关于如何使用Spring Boot框架通过JdbcTemplate操作MySQL数据库的教程。
11 0
springboot学习四:springboot链接mysql数据库,使用JdbcTemplate 操作mysql
|
6天前
|
SQL 存储 关系型数据库
mysql 数据库空间统计sql
mysql 数据库空间统计sql
19 0
|
9天前
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
43 6