Mysql数据库的基础知识和yum安装步骤

目录

MySQL数据库介绍

什么是数据库DB?

什么是sql?

Mysql是什么?

mysql和mariadb的前世今生

什么是关系型数据库(SQL)?

什么是非关系型数据库(NOSQL)?

关系型数据库与非关系型数据库的区别

yum安装Mysql数据库

1、清理环境

2、下载yum源的rpm安装包

3、开启MySQL57源,关闭MySQL80源 三种方式

4、关闭防火墙和selinux

5、安装必要的软件包

6、查找初始密码

7、登陆数据库

8、修改密码 三种方式

1.修改密码

2.破解mysql  root用户密码

​3.知道密码,库内修改密码

9、补充


MySQL数据库介绍

什么是数据库DB?

DB的全称是database,即数据库的意思。数据库实际上就是一个文件集合,是一个存储数据的仓库,数据库是按照特定的格式把数据存储起来,用户可以对存储的数据进行增删改查操作;

什么是sql?

SQL代表结构化查询语言(Structured Query Language)。SQL是用于访问数据库的标准化语言

SQL包含四个部分:

  • DDL 数据定义语言包含定义数据库及其对象的语句,例如表,视图,触发器,存储过程等。

  • DML 数据操作语言包含允许更新数据的语句。

  • DCL 数据控制语言允许授予用户权限访问数据库中特定数据的权限。

  • DQL 数据库查询语言

Mysql是什么?

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

版本演化:

MySQL:5.0 5.1 5.2 5.3 5.4 5.5 5.6 5.7 8.0

MariaDB: 5.0 5.1 5.2 5.3 5.4 5.5 10.0 10.1 10.2 10.3 10.4 10.5(有限代替MySQL8) 10.6……10.10代替MySQL8

MySQL是一个数据库管理系统,也是一个关系数据库。它是由Oracle支持的开源软件。这意味着任何一个人都可以使用MySQL而不用支付一毛钱。 另外,如果需要,还可以更改其源代码或进行二次开发以满足您的需要。

mysql和mariadb的前世今生

MySQL的名字,来自Michael Widenius的女儿My,My是Michael Widenius和前妻的女儿。 MariaDB的名字,来自Michael Widenius的小女儿Maria,Maria是Michael Widenius和第二任妻子的女儿。 Michael Widenius和前妻还有个儿子叫Max,当然,这个儿子的名字也没有浪费。在2003年的时候,德国软件公司SAP与MySQL建立合作关系,SAP旗下的数据库产品SAP DB被重新命名为MaxDB,其中的Max正是来自Michael Widenius的儿子的名字。

什么是关系型数据库(SQL)?

关系型数据库是依据关系模型来创建的数据库。

所谓关系模型就是“一对一、一对多、多对多”等关系模型,关系模型就是指二维表格模型,因而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。

关系型数据可以很好地存储一些关系模型的数据,比如一个老师对应多个学生的数据(“多对多”),一本书对应多个作者(“一对多”),一本书对应一个出版日期(“一对一”)数据的存储形式:

什么是非关系型数据库(NOSQL)?

非关系型数据库主要是基于“非关系模型”的数据库(由于关系型太大,所以一般用“非关系型”来表示其他类型的数据库)

非关系型模型比如有:

存储的数据是一列列的。关系型数据库以一行作为一个记录,列模型数据库以一列为一个记录。(这种模型,IO很快,主要是一些分布式数据库)

关系型数据库与非关系型数据库的区别

1.关系型数据库:
优点:
1、易于维护:都是使用表结构,格式一致;
2、使用方便:SQL语言通用,可用于复杂查询;
3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询;
4、学习成本低。


缺点:
1、读写性能比较差,尤其是海量数据的高效率读写;
2、固定的表结构,灵活度稍欠;
3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。吞吐量

2.非关系型数据库
优点:
1、格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛.
2、速度快:可以使用硬盘或者内存作为载体,而关系型数据库只能使用硬盘;redis数据库单线程10W
3、成本低:数据库部署简单,基本都是开源软件。

缺点:
1、不提供sql支持,学习和使用成本较高;
2、无事务处理;

yum安装Mysql数据库

1、清理环境

yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y
​
userdel -r mysql
​
rm -rf /etc/my*
​
rm -rf /var/lib/mysql

2、下载yum源的rpm安装包

MySQL :: Begin Your Download

wget https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm

 

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

3、开启MySQL57源,关闭MySQL80源 三种方式

这里我们使用得是mysql5.7所以修改mysql源内容

vim /etc/yum.repos.d/mysql-community.repo

    对应修改
    5.7
    enabled=1
    8.0
    enabled=0

 永久生效修改mysql源内容

yum -y install  yum-utils

yum-config-manager --disable mysql80-community
​
yum-config-manager --enable mysql57-community

 ​临时修改修改mysql源内容

yum -y install mysql-community-server --enablerepo mysql57-community --disablerepo mysql80-community

4、关闭防火墙和selinux

设置防火墙、selinux状态
1.关闭防火墙:

systemctl disable firewalld --now

2.禁用SELinux:

 setenforce 0

3.编辑文件/etc/selinux/config,将SELINUX修改为disabled,如下:

sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/sysconfig/selinu

5、安装必要的软件包

yum -y groupinstall "Development Tools"
​
yum -y install mysql-community-server
​
systemctl start  mysqld

6、查找初始密码

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

7、登陆数据库

 mysql -uroot -p'初始密码'

8、修改密码 三种方式

1.修改密码
mysqladmin -uroot -p'原密码' password '新密码'
2.破解mysql  root用户密码
vim /etc/my.cnf   

skip-grant-tables                        //添加语句,跳过授权表
systemctl restart mysgl                //重新启动mysg1

这个时候登录mysg1是不要密码的  直接输入mysql登录数据库

mysql>update mysql.user set authentication string=password("新密码")where User="root"  and Host='localhost';

mysql>flush privileges;  /刷新刚刚执行的mysql语句

修改完毕后删除etc/my.cnf  配置文件删除刚才添加的 skip-grant-table行



3.知道密码,库内修改密码


使用 sql语句修改密码

  第一种方式

mysql>set password for root@localhost = password('新密码');

mysql>flush privileges;  /刷新刚刚执行的mysql语句

 第二种方式

mysql>alter user 'root'@'localhost' identified by "密码";


mysql>flush privileges;  /刷新刚刚执行的mysql语句

9、补充

vim /etc/my.cnf


#关闭mysql密码强度策略,生产环境切勿尝试,首次启动不可关闭
validate-password=OFF

保存退出重启mysqld后生效

# 跳过密码进入数据库,用于忘记密码时使用
skip-grant-tables

保存退出重启mysqld后生效

以上两个参数不可同时存在

希望能够帮助到大家!

  • 27
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

藻头男

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值