当前位置:Gxlcms > 数据库问题 > mysql-数据库基本概念

mysql-数据库基本概念

时间:2021-07-01 10:21:17 帮助过:13人阅读

主流数据库介绍

    2  非关系型数据库介绍

   (1)非关系型数据库诞生背景

       非关系型数据库也被成为NoSQL数据库,NOSQL的本意是“Not Only SQL”.而不是“No SQL”的意思,因此,NoSQL的产生并不是要彻底地否定非关系型数据库,而是作为传统关系型数据库的一个有效补充。NOSQL数据库在特定的场景下可以发挥出难以想象的高效率和高性能。 

          随着互联网Web2.0网站的兴起,传统的关系型数据库在应付web2,0网站,特别是对于规模日益扩大的海量数据,超大规模和高并发的微博、微信、SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题。 

     例如:传统的关系型数据库IO瓶颈、性能瓶颈都难以有效突破,于是出现了大批针对特定场景,以高性能和使用便利为目的功能特异化的数据库产品。NOSQL(非关系型)类的数据就是在这样的情景下诞生并得到了非常迅速的发展 

        (2)  NOSQL非关系型数据库小结: 
    1、NOSQL不是否定关系数据库,而是作为关系数据库的一个重要补充 
    2、NOSQL为了高性能、高并发而生,但是要求对数据一致性要求不能高 
    3、NOSQL典型产品memcached (纯内存,k-v),redis(持久化缓存,k-v),mongodb(文档的数据库,xml-json)

 

四.MySQL介绍

  MySQL 数据库:是互联网领域里一款最重要的,深受广大用户欢迎的开源关系型数据库软件之一、由瑞典MySQL AB公司开发与维护。2008年。MySQL AB公司被SUN公司收购,2009年,SUN公司又被传统数据数据库领域大佬甲骨文(oracle)公司收购,因此,MySQL数据库软件目前属于Oracle公司,成为传统数据库领域老大的又一个数据库产品,甲骨文公司收购MySQL后,使得自身在商业数据库与开源软件领域市场占有份额都跃居第一的位置,这样的格局,引起了很多人的担忧,这种担忧直接导致后来的Mysql分支数据库MariaDB的诞生于发展。

  MySQL 发展历史

  • 1985 年,瑞典的几位志同道合小伙子(David Axmark、Allan Larsson 和Monty Widenius) 成立了一家公司,这就是MySQL AB 的前身。
  • 1990年,TcX公司的客户中开始有人要求为他的API提供SQL支持。当时有人提议直接使用商用数据库,但是Monty觉得商用数据库的速度难以令人满意。于是,他直接借助于mSQL的代码,将它集成到自己的存储引擎中。令人失望的是,效果并不太令人满意,于是,Monty雄心大起,决心自己重写一个SQL支持。
  • 1996年,MySQL 1.0发布,它只面向一小拨人,相当于内部发布。
  • 1996年10月,MySQL 3.11.1发布(MySQL没有2.x版本),最开始只提供Solaris下的二进制版本。一个月后,Linux版本出现了。
  • 1999~2000年,MySQL AB公司在瑞典成立。Monty雇了几个人与Sleepycat合作,开发出了Berkeley DB引擎, 因为BDB支持事务处理,所以MySQL从此开始支持事务处理了。
  • 2003年12月,MySQL 5.0版本发布,提供了视图、存储过程等功能。
  • 2008年1月16日,Sun(太阳微系统)正式收购MySQL。
  • 2009年4月20日,甲骨文公司宣布以每股9.50美元,74亿美元的总额收购Sun电脑公司。
  • 2010年12月,MySQL 5.5发布,其主要新特性包括半同步的复制及对SIGNAL/RESIGNAL的异常处理功能的支持,最重要的是InnoDB存储引擎终于变为当前MySQL的默认存储引擎。
  • 2013年6月18日,甲骨文公司修改MySQL授权协议,移除了GPL。但随后有消息称这是一个bug。

  为什么选择MySQL数据库?

 (1) MySQL性能卓越、服务稳定,很少出现异常宕机 
 (2) MySQL开放源代码且无版权制约,自主性及使用成本低 
   (3) MySQL历史悠久,社区及用户活跃,遇到问题可以解决 
   (4) MySQL软件体积小,安装使用简单,并且易于维护,安装及维护成本低 
   (5) MySQL品牌口碑效应,使得企业无需考虑就直接用 
   (6) MySQL支持多用操作系统,提供多种API接口,支持多用开发语言,特别对流行的语言有很好的支持

 

  MariaDB 介绍 :

  出现在2009年. MAriaDB数据库管理系统是MySQL数据库的一个分支,主要由开源社区维护,采用GPL授权许可。开发这个MariaDB的原因之一是:甲骨文公司收购了MySQL后,MySQL有闭源的潜在风险,因此MySQL开源社区采用分支的方式来避开这个风险。点击查看详情 

  MariaDB默认的存储引擎是Maria,不是MyISAM。Maria可以支持事务,但是默认情况下没有打开事务支持,因为事务支持对性能会有影响。可以通过以下语句,转换为支持事务的Maria引擎。ALTER TABLE `tablename` ENGINE=MARIA TRANSACTIONAL=1; 

 

五.啥是SQL?

  上面咱们介绍过数据库的组成部分,其中数据库管理系统可以接收一些命令,对数据文件进行添加、删除、修改、查询等操作。那么这些命令就是 SQL .

  SQL:(Structured Query Language)是结构化查询语言缩写。是一门专门与数据库管理系统打交道的语言。

  SQL语言:是关系型数据库的标准语言, 其主要用于存取数据,查询数据,更新数据和管理数据库系统等操作。

  具体可以把SQL分为4个部分:

    数据控制语言 ( DCL): 主要用于控制用户的访问权限。其中GRANT语句用于给用户增加权限,REVOKE语句用于收回用户的权限

    数据定义语言(DDL):DROP、CREATE、ALTER等语句;数据库定义语言。主要用于定义数据库,表,视图,索引和触发器等。CREATE语句主要用于创建数据库,创建表,创建视图。ALTER语句主要用于修改表的定义,修改视图的定义。DROP语句主要用于删除数据库,删除表和删除视图等。

    数据操作语言(DML):INSERT、UPDATE、DELETE语句;数据库操作语言。主要用于插入数据,更新数据,删除数据。INSERT语句用于插入数据,UPDATE语句用于更新数据,DELETE语句用于删除数据.

    数据查询语言(DQL):SELECT语句。主要用于查询数据。

技术分享图片
#1. 操作文件夹
        增:create database db1 charset utf8;
        查:show databases;
        改:alter database db1 charset latin1;
        删除: drop database db1;


#2. 操作文件
    先切换到文件夹下:use db1
        增:create table t1(id int,name char);
        查:show tables
        改:alter table t1 modify name char(3);
              alter table t1 change name name1 char(2);
        删:drop table t1;
    

#3. 操作文件中的内容/记录
        增:insert into t1 values(1,egon1),(2,egon2),(3,egon3);
        查:select * from t1;
        改:update t1 set name=sb where id=2;
        删:delete from t1 where id=1;

        清空表:
            delete from t1; #如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始。
            truncate table t1;数据量大,删除速度比上一条快,且直接从零开始,

            auto_increment 表示:自增
            primary key 表示:约束(不能重复且不能为空);加速查找
操作

mysql-数据库基本概念

标签:b2c   mod   数据库软件   show   ext   ibm   插入   公司   背景   

人气教程排行