數據庫的歷史及常見基本功能

數據庫的基本知識,MariaDB的基本知識,SQL語句

一、數據庫的基本知識

1 數據庫的發展:

萌芽階段———文件系統:使用磁盤文件來存儲數據

初級階段———第一代數據庫:出現了網狀、層次模型的數據庫

中級階段———第二代數據庫:關系型數據庫和結構化查詢語言

高級階段———新一代數據庫:“關系-對象”型數據庫

2 數據庫管理系統的基本功能:

數據定義

數據處理

數據安全

數據備份

3 數據庫系統的架構:

單機架構

大型主機/終端架構

主從式架構(C/S)

分布式架構

4 關系型數據庫:

關系:關系就是二維表

行row:表中的每一行,又稱為一條記錄

列column:表中的每一列,稱為屬性,字段

主鍵(Primary key):用于唯一確定一個記錄的字段

域domain:屬性的取值范圍

5 關系數據庫

RDBMS :

MySQL:MySQL, MariaDB, Percona Server

PostgreSQL: 簡稱為pgsql ,EnterpriseDB

Oracle:

MSSQL:

DB2:

事務transaction:多個操作被當作一個整體對待:

ACID:

A:原子性

C:一致性

I :隔離性

D:持久性

6 聯系類型:

一對一聯系(1:1)

一對多聯系(1:n)

多對多聯系(m:n)

7 數據結構:

一類是與數據類型、內容、性質有關的對象,比如關系模型中的域、屬性和關系等;

另一類是與數據之間聯系有關的對象,它從數據組織層表達數據記錄與字段的結構

8 數據的操作:

數據提?。涸跀祿现刑崛「信d趣的內容(SELECT)

數據更新:變更數據庫中的數據(INSERT、DELETE、UPDATE)

9 范式:

1NF:無重復的列,每一個列都是不可分割的基本數據項,同一列中不能有多個值,即實體中的 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 某個屬性不能有多個值或者不能有重復發的屬性。

2NF:屬性完全依賴于主鍵,第二范式必須先滿足第一范式,要求表中的每一個行必須可以被唯 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 一區分。通常為表加上一列,以存儲各個實例的唯一標識PK,非PK的字段需要與整個PK ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 有直接相關性。

3NF:屬性不依賴與其它非主屬性,滿足第三范式必須要滿足第二范式。第三范式要求一個數據 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 庫中不包含的非主關鍵字信息,非PK的字段間不能有從屬關系

10 SQL概念:

SQL:Structure Query Language

結構化查詢語言

SQL解釋器:

數據庫存儲協議:應用層協議,C/S (S:server,監聽于套接字,接受并處理客服端的應用請求)

二、MariaDB

1 MariaDB的特性:

單進程,多線程

插件式存儲引擎:存儲管理器有多種實現版本,用戶可根據需要靈活選擇

存儲引擎也稱為”表類型”

2 mariadb組包括下面包:

mariadb-server:mandatory package

mariadb-bench:optional package

mariadb-test:optional package

3 mariadb-client組包括下面包:

Mariadb:mandatory package

MySQL-python:default package

mysql-connector-odbc:default package

libdbi-dbd-mysql:option package

mysql-connector-java:optional package

perl-DBD-MySQL:optional package

4 配置文件:

/etc/my.cnf和/etc/my.cnf.d/*.cnf

5 MariaDB配置

傾聽3306/tcp端口可以在綁定有一個或全部接口IP上

vim /etc/my.cnf

6 安裝MariaDB

三、SQL語句

1 SQL語句構成

Keyword組成clause

多條clause組成語句

SELECT*? ? ? ? ?SELECT子句

FROM products ?FROM子句

WHERE price >400 WHERE 子句

2 SQL語句分類:

DDL:Data Defination Language

CREATE ,DROP,ALTER

DML: ?Data Manipulation Language

INSERT, DELETE, UPDATE

DCL: ?Data Control Language

GRANT, REVOKE

DQL: ?Data Query Language

SELECT

3 SQL語言規范

在數據庫系統中,SQL語句不區分大小寫

但字符串常量區分大小寫

SQL語句可單行或多行書寫,以;結尾

關鍵字不能跨多行書寫或簡寫

用空格和縮進來提高語句的可讀性

子句通常位于獨立行,便于編輯,提高可讀性

4 數據庫對象的命名規則

必須以字母開頭

可包括數字和三個特殊字符

不要使用MySQL的保留字

同一database(Schema)下的對象不能同名

5 數據庫操作

創建數據庫:

CREATE DATABASE|SCHEMA ‘DB_NAME’;

CHARACTER SET ‘character set name’

COLLATE ‘collate name’

刪除數據庫:

DROP DATABASE|SCHEMA ‘DB_NAME’

查看支持所有字符集:SHOW CHARACTER SET;

查看支持所有排序規則:SHOW COLLATION;

獲取命令使用幫助: mysql >HELP KEYWORD;

查看數據庫列表:mysql> SHOW DATABASES;

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/91364

(0)
zss123456zss123456
上一篇 2018-01-29 21:01
下一篇 2018-01-30 15:21

相關推薦

  • shell 腳本的編輯基礎

          shell腳本是Linux運維工程師必須掌握的技能之一,shell腳本的使用讓我們更好的操作Linux系統,方便了我們的執行。 一,編程基礎 編程基本概念 編程邏輯處理方式:順序執行,循環執行,選擇執行 程序:指令+ 數據 shell 編程:過程式、解釋執行 shell程序:提供了編程能力,解釋執…

    Linux干貨 2016-08-22
  • 文本處理工具之grep

                    文本處理工具之grep 一、grep的簡介 1、grep是一個文本過濾器的工具,它根據用戶指定的模式(pattern)對目標文本進行匹配檢查,并將匹配的行打印到標準輸出或輸出重定向。 2、模式:由文本字符或正則表達式組成 3、正則表達式分…

    2017-05-06
  • FHS文件系統

    一、什么是FHS?   Filesystem Hierarchy Standard(文件系統目錄標準)的縮寫,多數Linux版本采用這種文件組織形式,類似于Windows操作系統中c盤的文件目錄,FHS采用樹形結構組織文件。FHS定義了系統中每個區域的用途、所需要的最小構成的文件和目錄,同時還給出了例外處理與矛盾處理。 二、它的來源歷史 …

    Linux干貨 2016-10-17
  • 細說linux上的特殊權限位

    linux上的文件的權限 linux的哲學思想之一就是一切皆文件。這樣說來,每臺安裝了linux的主機上,就會有大量的文件。而另一方面,linux在安全方面有著極為出色的表現。眾所周知,linux是一個多用戶的系統,因此為一個文件加上合適的權限為顯得非常有必要了。linux上的基本權限我就不一一介紹了,請不熟悉的同學自行百度腦補。我們來說說linux上文件和…

    Linux干貨 2017-04-10
  • 探索這個“男人”

    一、前言 正所謂了解一個命令就得了解他的用法,正好是要了解一個人就得了解他的興趣愛好,處事態度以及為人是怎么樣的。 二、man是什么 man – an interface to the on-line reference manuals Man是manual(手冊)的縮寫,使用權限是所有用戶,man命令提供為linux系統在線提供了很好的幫助手冊…

    Linux干貨 2016-05-03
  • Linux系統程序包管理工具-RPM

    一、rpm是什么 RPM 是RPM Package Manager(RPM軟件包管理器)的縮寫,這一文件格式名稱雖然打上了RedHat的標志,但是其原始設計理念是開放式的。RPM包管理器(RPM)是一個強大的命令行驅動的包管理系統能夠安裝、卸載、驗證、查詢和更新計算機軟件包。每個軟件包包括存檔的文件連同包和它的版本信息,描述等。還有一個庫API,允…

    Linux干貨 2015-11-19
欧美性久久久久