MySQL数据库(1)

目录

        一、数据库概念

        1.1 概念

        1.1.1 数据

        1.1.2 表

        1.1.3 数据库

        1.2 数据库管理系统(DBMS)

         1.3 数据库管理系统的优点

        1.4 数据库管理系统的基本功能及架构

        二、关系型数据库和非关系型数据库

        2.1 主流关系型数据库系统

        2.2 关系型数据库和非关系型数据库的区别

        2.3 优点与缺点 

        2.4  非关系型数据库

        2.5 优点与缺点

        三、安装mysql 

        3.1 安装方法一      

        3.1.1   版本5.5安装

         3.1.2 yum安装5.7版本

         四、多实例

        4.1 概念

        4.2 模拟实验


        一、数据库概念

        1.1 概念

        1.1.1 数据

        描述事物的符号记录包括数字,文字、图形、图像、声音、档案记录等以“记录”形式按统一的格式进行存储。

        1.1.2 表

        将不同的记录组织在一起,用来存储具体数据。

        1.1.3 数据库

        表的集合,是存储数据的仓库,以一定的组织方式存储的相互有关的数据集合。

        1.2 数据库管理系统(DBMS)

        数据库系统是实现对数据库资源有效组织、管理和存取的系统软件,是一个人机系统,由硬件、OS、数据库、DBMS、应用软件和数据库用户组成,用户可以通过DBMS或应用程序操作数据库。

        

         1.3 数据库管理系统的优点

        相互关联的数据的集合

        较少的数据冗余

        程序与数据相互独立

        保证数据的安全、可靠

        最大限度地保证数据的正确性

        数据可以并发使用并能同时保证一致性

        1.4 数据库管理系统的基本功能及架构

        · 基本功能:数据定义、数据处理、数据安全、数据备份

        · 数据库架构:单机架构、大型主机架构/终端架构、主从架构(C/S)、分布式架构

        二、关系型数据库和非关系型数据库

        2.1 主流关系型数据库系统

        关系型数据库:Mysql(Oracle公司) 、 SQL server(微软) 、access(微软公司office产品)
Oracle 、DB2(IBM公司),sybase(sybase) 等

        2.2 关系型数据库和非关系型数据库的区别

        关系数据库:
        关系数据库结构是二维数据库表,二维表当中每个字段(列)用来描述对象的一个属性,
每个记录(行)用来描述一个对象的信息(完整信息),关系数据库写到哪里也就是存储在硬盘当中 读写系统就会受到的IO限制或者瓶颈 

        2.3 优点与缺点 

        优点:
        1、易于维护:都是使用表结构,格式一致;
        2、使用方便:SQL语言通用,可用于复杂查询;
        3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。
        缺点:
        1、读写性能比较差,尤其是海量数据的高效率读写;
        2、固定的表结构,灵活度稍欠;
        3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。

        2.4  非关系型数据库

        MongoDB 、 Redis(内存数据库/缓存数据库)K-V键值对、与之类似的Memcache,K-V键值对redis-memecache对比: 

        相同点:存储高热数据(在内存中高速运行)
        不同点:redis可以做持久化保存,可以存储对象

        2.5 优点与缺点

        优点:

        1、格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、
图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。
        2、速度快:nosql可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘;
        3、高扩展性;
        4、成本低:nosql数据库部署简单,基本都是开源软件。

        缺点:

        1、不提供sql支持,学习和使用成本较高;
        2、无事务处理;
        3、数据结构相对复杂,复杂查询方面稍欠。

        三、安装mysql 

        3.1 安装方法一      

        3.1.1   版本5.5安装

        不建议使用,此版本不稳定。

        开启服务

[root@lppdff ~]# systemctl start mariadb.service
[root@lppdff ~]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2

MariaDB [(none)]> 

##此版本匿名用户也可以进入查看为安全性启动初始化

[root@lppdff ~]# mysql_secure_installation

 

         验证

         3.1.2 yum安装5.7版本

##创建数据库源安装
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# vim mysql.repo
##添加记录
[mysql]
name=mysql5.7
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/
gpgcheck=0

##下载安装
[root@localhost yum.repos.d]# yum -y install mysql-community-server

##启动数据库
[root@localhost yum.repos.d]# systemctl start mysqld

##此版本为安全性需要去文件下查看默认数据库密码才能登录
[root@localhost yum.repos.d]# grep password /var/log/mysqld.log
2021-11-23T14:18:07.164650Z 1 [Note] A temporary password is generated for root@localhost: grUjMp;!K0w>


[root@localhost yum.repos.d]# mysql -u root -p'grUjMp;!K0w>'

         四、多实例

        4.1 概念

        多实例类似微信双开,端口号类比微信账号,数据库类比聊天窗口,表类比聊天记录

MySQL多实例就是在一台服务器上同时开启多个不同的服务端口(如:3306、3307等),同时运

行多个MySQL服务进程,这些服务进程通过不同的Socket监听不同的服务端口来提供服务。

多实例可能是MySQL的不同版本,也可能是MySQL的同一版本实现。

        优点:

        可有效利用服务器资源。当单个服务器资源有剩余时,可以充分利用剩余资源提供更多的服务,且可以实现资源的逻辑隔离节约服务器资源。例如公司服务器资源紧张,但是数据库又需要各自尽量独立的提供服务,并且还需要到主从复制等技术,多实例就是最佳选择。

        缺点:

        存在资源互相抢占的问题。比如:当某个数据库实例并发很高或者SQL查询慢时,整个实例会消耗大量的CPU、磁盘I/O等资源,导致服务器上面其他的数据库实例在提供服务的质量也会下降,所以、具体的需求要根据自己的实际情况而定。

        4.2 模拟实验

## 递归并显示过程创建mysql目录并在中创建文件
[root@localhost ~]#mkdir -pv /mysql/{3306,3307,3308}/{data,etc,socket,log,bin,pid}

##更改组
[root@lppdff ~]# chown -R mysql.mysql /mysql

##生成数据库文件
[root@localhost ~]#mysql_install_db --user=mysql --datadir=/mysql/3306/data
[root@localhost ~]#mysql_install_db --user=mysql --datadir=/mysql/3307/data
[root@localhost ~]#mysql_install_db --user=mysql --datadir=/mysql/3308/data


##编辑配置文件
[root@localhost ~]#vim /mysql/3306/etc/my.cnf
[root@lppdff ~]# vim /mysql/3307/etc/my.cnf
[root@lppdff ~]# vim /mysql/3308/etc/my.cnf

[mysqld]
port=3306
datadir=/mysql/3306/data
socket=/mysql/3306/socket/mysql.sock
log-error=/mysql/3306/log/mysql.log
pid-file=/mysql/3306/pid/mysql.pid
##添加启动脚本
[root@lppdff ~]# vim /mysql/3306/bin/mysqld
[root@lppdff ~]# vim /mysql/3307/bin/mysqld
[root@lppdff ~]# vim /mysql/3308/bin/mysqld


##添加权限
[root@lppdff ~]# chmod +x /mysql/3306/bin/mysqld
[root@lppdff ~]# chmod +x /mysql/3307/bin/mysqld
[root@lppdff ~]# chmod +x /mysql/3308/bin/mysqld

##启动服务
[root@localhost ~]#/mysql/3306/bin/mysqld start
[root@localhost ~]#/mysql/3307/bin/mysqld start
[root@localhost ~]#/mysql/3308/bin/mysqld start

##进入数据库
[root@lppdff ~]# mysql -h127.0.0.1 -P3308

##关闭数据库,默认没有密码回车
[root@lppdff ~]# /mysql/3308/bin/mysqld stop
Stoping MySQL...
Enter password: 

##修改密码
[root@localhost ~]#mysqladmin -uroot -S /mysql/3306/socket/mysql.sock password 
'123123' 
[root@localhost ~]#mysqladmin -uroot -S /mysql/3307/socket/mysql.sock password 
'123123' 
[root@localhost ~]#mysqladmin -uroot -S /mysql/3308/socket/mysql.sock password 
'123123'


##开机自启
[root@localhost ~]#vim /etc/rc.d/rc.local
##添加记录
for i in {3306..3308};do /mysql/$i/bin/mysqld start;done
[root@localhost ~]#chmod +x /etc/rc.d/rc.local

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值