1. 程式人生 > 其它 >Blog.058 MySQL 資料庫基礎

Blog.058 MySQL 資料庫基礎

本章目錄

1. 基本概念
  1.1 使用資料庫的必要性
  1.2 資料庫的組成
  1.3 主流資料庫
  1.4 關係型資料庫
  1.5 非關係型資料庫
2. MySQL 資料庫自動補全命令
  2.1 方法一:臨時使用自動補全功能
  2.2 方法二:永久使用自動補全功能
  2.3 使用軟體 mycli 實現自動補全功能

1. 基本概念
  1.1 使用資料庫的必要性

    使用資料庫可以高效且條理分明地儲存資料,使人們能夠更加迅速、方便地管理資料。 資料庫具有以下特點:

  • 可以結構化儲存大量的資料資訊,方便使用者進行有效的檢索和訪問。
  • 可以有效地保持資料資訊的一致性、完整性,降低資料冗餘。
  • 可以滿足應用的共享和安全方面的要求。


    資料庫技術是電腦科學的核心技術之一,具有完備的理論基礎。對資料庫基本概念的掌握,將有助於對資料庫的理解。


  1.2 資料庫的組成

  • 資料:描述事物的符號記錄,包括數字,文字、圖形、影象、聲音、檔案記錄等,以“記錄”形式按統一格式進行儲存。
  • 表:將不同的記錄組織在一起,用來儲存具體資料。
  • 資料庫: 表的集合,是儲存資料的倉庫,以一定的組織方式儲存的相互有關的資料集合。

  • 資料庫的管理系統(DBMS)

    是實現對資料庫資源有效組織、管理和存取的系統軟體
    功能:資料庫的建立和維護功能、資料定義功能、資料操控功能、資料庫的執行管理功能、通訊功能。

  • 資料庫系統(DBS

    是一個人機系統,由硬體、OS、資料庫、DBMS、應用軟體和資料庫使用者組成
    使用者可以通過DBMS或應用程式操作資料庫。

    訪問資料庫的流程:

    (1)應用程式把查詢SQL語句發給伺服器端執行。
    (2)伺服器解析請求的SQL語句。
    (3)語句執行。

    注意:

  • 確保SQL語法正確;
  • 確保SQL語義上的正確性即物件是否存在;
  • 資料庫使用者是否具有相應的訪問許可權。


  1.3 主流資料庫

    (1)SQL Server(微軟公司產品)

  • 面向Windows作業系統
  • 簡單、易用

    (2)Oracle(甲骨文公司產品)

  • 面向所有主流平臺
  • 安全、完善、操作複雜

    (3)DB2(IBM公司產品)

  • 面向所有主流平臺
  • 大型、安全、完善

    (4)MySQL(甲骨文公司收購)

  • 免費、開源、體積小


  1.4 關係型資料庫

    (1)關係資料庫系統是基於關係模型的資料庫系統
    (2)關係模型的資料結構使用簡單易懂的二維資料表

  • 每一行稱為一條記錄,用來描述一個物件的資訊
  • 每一行稱為一個欄位,用來描述物件的一個屬性

    (3)關係模型可用簡單的 "實體-關係-屬性" 來表示

  • 實體:

    也稱為例項,對應現實世界中可區別與其他物件的“事件”或“事物”
    如銀行客戶、銀行賬戶等

  • 關係:

    實體集之間的對應關係稱為聯絡,也稱為關係
    如銀行客戶和銀行賬戶之間存在“儲蓄”的關係

  • 屬性:

    實體所具有的某一特性,一個實體可以有多個屬性
    如“銀行客戶”實體集中的每個實體均具有姓名、住址、電話等屬性


  1.5 非關係型資料庫

    (1)非關係資料庫也稱為NoSQL (Not Only SQL)

  • 儲存資料不以關係模型為依據,不需要固定的表格式

    (2)非關係型資料庫的優點:

  • 資料庫可高併發讀寫
  • 對海量資料高效率儲存與訪問
  • 資料庫具有高擴充套件性與高可用性


2. MySQL 資料庫自動補全命令
  2.1 方法一:臨時使用自動補全功能

1 mysql -u root -p --auto-rehash

  2.2 方法二:永久使用自動補全功能

1 vi /etc/my.cnf
2  
3 [mysql]
4 auto-rehash

  2.3 使用軟體 mycli 實現自動補全功能

    (1)安裝相關依賴軟體(需要配置yum官方或者阿里源進行安裝)

1 yum -y install epel-release
2 yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel gcc

    (2)下載python安裝包(自己下載過可以忽略此步驟)

1 wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz

    (3)建立目錄,並新增配置

1 mkdir ~/.pip/
2  
3 cat > ~/.pip/pip.conf <<EOF
4 [global]
5 index-url = https://mirrors.aliyun.com/pypi/simple/
6  
7 [install]
8 trusted-host=mirrors.aliyun.com
9 EOF

    (4) 安裝相關依賴軟體,解壓python軟體包並進行編譯安裝

1 yum -y install libffi-devel zlib* python-devel openssl-devel
2 tar -zxvf Python-3.9.0.tgz
3 cd Python-3.9.0/
4 ./configure --prefix=/usr/local/python --with-ssl
5 make && make install

    (5)優化路徑,安裝pip3

1 yum -y install libffi-devel zlib* python-devel openssl-devel
2 tar -zxvf Python-3.9.0.tgz
3 cd Python-3.9.0/
4 ./configure --prefix=/usr/local/python --with-ssl
5 make && make install   

    (6)登入測試

1 mycli -u root -p <密碼>

-