mysql数据库介绍与安装
文章目录
- mysql数据库介绍与安装
- 1:数据结构模型
- 2:RDBMS专业名词
- 3:数据库常见组件
- 4:sql语句
- 5:安装mysql数据库
- 6:安装mariadb
1:数据结构模型
数据结构模型有:
层次模型
数据库层次模型就像一棵树,主干上有着不同的分支,描述一对多的层次关系非常自然直观,容易理解
网状结构
网状模型就像是一张蜘蛛网,各个节点相互连接
关系模型
面向对象模型
面向对象模型是一种新兴的数据模型,它以对象为单位,每个对象包含对象的属性和方法,具有类和继承等特点
关系模型:
二维关系:row(行),column(列)
数据库中列为字段,行为数据
数据库管理系统:DBMS (Database Management System)
关系:Relational,RDBMS
2:RDBMS专业名词
常见的关系型数据库管理系统:
MySQL:MySQL,MariaDB,Percona-Server
( MySQL数据库在5.7即以前版本为开源免费,2009年后被oracle收购。收购后逐步转化为商用并推出8.0版本。)
PostgreSQL:简称为pgsql
Oracle
MSSQL
SQL:Structure Query Language,结构化查询语言
约束:constraint,向数据表提供的数据要遵守的限制
主键约束:一个或多个字段的组合,填入的数据必须能在本表中唯一标识本行。且必须提供数据,不能为空(NOT NULL)。
一个表只能存在一个
惟一键约束:一个或多个字段的组合,填入的数据必须能在本表中唯一标识本行。允许为空(NULL)
一个表可以存在多个
外键约束:一个表中的某字段可填入数据取决于另一个表的主键已有的数据
检查性约束
索引:将表中的一个或多个字段中的数据复制一份另存,并且这些数据需要按特定次序排序存储
3:数据库常见组件
关系型数据库的常见组件有:
数据库:database
表:table,由行(row)和列(column)组成
索引:index
视图:view
用户:user
权限:privilege
存储过程:procedure
存储函数:function
触发器:trigger
事件调度器:event scheduler
4:sql语句
SQL语句有三种类型:
DDL:Data Defination Language,数据定义语言
DML:Data Manipulation Language,数据操纵语言
DCL:Data Control Language,数据控制语言 (权限)
SQL语句类型 | 对应操作 |
DDL | CREATE:创建 DROP:删除 >ALTER:修改 |
DML | INSERT:向表中插入数据 DELETE:删除表中数据 UPDATE:更新表中数据 SELECT:查询表中数据 |
DCL | GRANT:授权 REVOKE:移除授权 |
5:安装mysql数据库
下载mysql数据库的yum仓库并配置
wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
rpm -Uvh mysql57-community-release-el7-11.noarch.rpm
ls /etc/yum.repos.d/
mysql-community.repo
安装mysql数据库并不检查来源合法性,如果不加–nogpgcheck会报错
yum -y install mysql-community-server mysql-community-client mysql-community-common mysql-community-devel --nogpgcheck
如果报错为这种的
- nothing provides libncurses.so.5()(64bit) needed by mysql-community-client-5.7.38-1.el7.x86
执行以下命令
yum install libncurses*
设置开机自启并启动mysql服务
systemctl enable --now mysqld
在配置文件里面查看我们mysql的登录密码
cat /var/log/mysqld.log | grep password
2022-07-24T03:05:04.754942Z 1 [Note] A temporary password is generated for root@localhost: MPLe2eY1At-B
登录mysql
mysql -uroot -p
Enter password:
修改密码强度等级为零,此处要根据实际情况来设置,我在实验环境不想用复杂密码所以设置为0。
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
修改密码长度为1
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456789';
Query OK, 0 rows affected (0.00 sec)
测试,修改成功
mysql -uroot -p123456789
mysql>
6:安装mariadb
安装mariadb
yum -y install mariadb*
设置为开机自启,并启动服务
systemctl restart --now mariadb.service
进入数据库中,mariadb默认设置没有密码
mysql -uroot
MariaDB [(none)]>
设置密码
MariaDB [(none)]> SET password for 'root'@'localhost'=password('123456');
Query OK, 0 rows affected (0.000 sec)
测试
[root@localhost ~]# mysql -uroot -p123456
MariaDB [(none)]>