CentOS 7使用RPM安装MySQL

2024-08-20 18:44

本文主要是介绍CentOS 7使用RPM安装MySQL,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        MySQL是一个开源的关系型数据库管理系统(RDBMS),允许用户高效地存储、管理和检索数据。它被广泛用于各种应用,从小型的web应用到大型企业解决方案。

        MySQL提供了丰富的功能,包括支持多个存储引擎、事务能力、数据完整性和高性能。它支持SQL(结构化查询语言)标准,用于查询和操作数据。

        使用MySQL,您可以创建数据库、表以及它们之间的关系。可以使用SQL语句插入、更新和删除数据。MySQL还提供了各种索引技术和优化工具,以提高查询性能。

        此外,MySQL支持用户身份验证和访问控制机制,以确保数据安全。它具有复制能力,用于创建可靠的高可用系统,并且还支持备份和恢复功能,用于数据保护。

        MySQL与各种编程语言和平台兼容,使其成为开发人员的首选。它被许多组织所使用,并得到了庞大而活跃的社区支持。

1.下载Mysql的rpm安装包

MySQL官网地址:MySQL

页面到下面

默认是最新的版本,点击Archives找到旧的版本

选择版本 

2.下载

右键要下载的RPM包点胶机复制链接地址

创建一个目录

把RPM包下载到一个目录中方便寻找

3.卸载已安装的MySQL(没安装过则跳过)

关闭mysql服务

systemctl stop mysqld

 查询

 按照顺序卸:

rpm -e --nodeps mysql-community-server

rpm -e --nodeps mysql-community-client

rpm -e --nodeps mysql-community-libs

rpm -e --nodeps mysql-community-common

卸载完基本的环境后,我们要清理依赖的文件

删除数据库数据文件,但是如果陌生服务器,此步骤谨慎!!!!!!

rm -rf /var/lib/mysql

删除日志临时文件

rm -rf /var/log/mysqld.log

4.安装

以前的Linux系统中数据库大部分是MySQL,不过自从被 sun 收购之后,就没用集成 在centos这些开源Linux系统中了,那么如果想用的话就需要自己安装了,首先centos7 已经 不在默认提供 MySQL,因为收费了你懂得,所以内部集成了mariadb,而安装 MySQL 的话 会和mariadb的文件冲突,所以需要先卸载掉mariadb。

rpm -qa | grep mariadb

rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64

安装依赖

yum install libaio -y

yum install net-tools -y

安装刚刚下载的4个Mysql包

rpm -ivh mysql-community-common-5.7.33-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.33-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.33-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.33-1.el7.x86_64.rpm

按照这个顺序安装

查看当前版本

mysqladmin --version

5.启动及查询状态

# 查询MySQL在系统的状态

systemctl status mysqld

# 启动MySQL数据库

systemctl start mysqld

# 关闭MySQL数据库

systemctl stop mysqld

# 重启MySQL数据库

systemctl restart mysqld

# 查看MySQL进程

ps -ef | grep mysql

登录MYSQL

获得临时密码

grep 'temporary password' /var/log/mysqld.log

set global validate_password_policy=0; # 关闭密码复杂性策略

set global validate_password_length=4; # 设置密码复杂性要求密码最低长度为4

现在就可以设置密码了

ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';

拓展:
1.创建用户

CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';

这种是只能从localhost本机连接到MySQL服务器

CREATE USER '用户名'@'ip地址' IDENTIFIED BY '密码';

只能从IP地址的计算机授予(远程)访问

CREATE USER '用户名'@'%' IDENTIFIED BY '密码';

可以从任何主机连接到MySQL

2.权限

ALL PRIVILEGES - 授予用户帐户的所有权限。

CREATE - 允许用户帐户创建数据库和表。

DROP - 允许用户帐户删除数据库和表。

DELETE - 允许用户帐户从特定表中删除行。

INSERT - 允许用户帐户将行插入特定表。

SELECT - 允许用户帐户读取数据库。

UPDATE - 允许用户帐户更新表行。

3.创建用户 建库建表

1)创建用户

CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';

2)建库
CREATE DATABASE 数据库名;

3)建表

表需要建在数据库中,建表前要选中数据库

USE 库名;

create table 表名(
    字段1 字段1类型,
    字段2 字段2类型,
    字段3 字段3类型,
    ...
    字段n 字段n类型
);

修改表明

alter table 表名 rename to 新表名

删除表

drop table [if exists] 表名;

4)删除数据库

drop database [if exists] 数据库名;

4.MYSQL约束

约束条件    说明
PRIMARY KEY    主键约束用于唯一标识对应的记录
FOREIGN KEY    外键约束
NOT NULL    非空约束
UNIQUE    唯一性约束
DEFAULT    默认值约束,用于设置字段的默认值

MySQL中的约束分为为列级约束和表级约束,其中:
列级约束:NOT NULL、DEFAULT、PRIMARY KEY、UNIQUE、CHECK
表级约束:PRIMARY KEY、UNIQUE、CHECK、FOREIGN KEY

列级约束和表级约束在添加位置上也有所不同:
列约束:在 字段名 数据类型 后面追加约束
表约束:在各个列字段的最下面,以CONSTRAINT 开头添加约束

CREATE TABLE 表名 (
字段名 字段类型,
字段名 字段类型 列级约束,
表级约束
);

如有错误给孩子提醒一下,感谢观看!

这篇关于CentOS 7使用RPM安装MySQL的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1090872

相关文章

SQL server数据库如何下载和安装

《SQLserver数据库如何下载和安装》本文指导如何下载安装SQLServer2022评估版及SSMS工具,涵盖安装配置、连接字符串设置、C#连接数据库方法和安全注意事项,如混合验证、参数化查... 目录第一步:打开官网下载对应文件第二步:程序安装配置第三部:安装工具SQL Server Manageme

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.

使用Python删除Excel中的行列和单元格示例详解

《使用Python删除Excel中的行列和单元格示例详解》在处理Excel数据时,删除不需要的行、列或单元格是一项常见且必要的操作,本文将使用Python脚本实现对Excel表格的高效自动化处理,感兴... 目录开发环境准备使用 python 删除 Excphpel 表格中的行删除特定行删除空白行删除含指定

全面掌握 SQL 中的 DATEDIFF函数及用法最佳实践

《全面掌握SQL中的DATEDIFF函数及用法最佳实践》本文解析DATEDIFF在不同数据库中的差异,强调其边界计算原理,探讨应用场景及陷阱,推荐根据需求选择TIMESTAMPDIFF或inte... 目录1. 核心概念:DATEDIFF 究竟在计算什么?2. 主流数据库中的 DATEDIFF 实现2.1

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

prometheus如何使用pushgateway监控网路丢包

《prometheus如何使用pushgateway监控网路丢包》:本文主要介绍prometheus如何使用pushgateway监控网路丢包问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录监控网路丢包脚本数据图表总结监控网路丢包脚本[root@gtcq-gt-monitor-prome

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

浅谈mysql的not exists走不走索引

《浅谈mysql的notexists走不走索引》在MySQL中,​NOTEXISTS子句是否使用索引取决于子查询中关联字段是否建立了合适的索引,下面就来介绍一下mysql的notexists走不走索... 在mysql中,​NOT EXISTS子句是否使用索引取决于子查询中关联字段是否建立了合适的索引。以下