您好,登錄后才能下訂單哦!
這篇文章跟大家分析一下“Linux必掌握的SQL命令有哪些”。內容詳細易懂,對“Linux必掌握的SQL命令有哪些”感興趣的朋友可以跟著小編的思路慢慢深入來閱讀一下,希望閱讀后能夠對大家有所幫助。下面跟著小編一起深入學習“Linux必掌握的SQL命令有哪些”的知識吧。
數(shù)據(jù)庫和 SQL
目前我們使用平面文本文件來存儲數(shù)據(jù)。平面文本文件可能適合相對較少的數(shù)據(jù),但它們對存儲大量數(shù)據(jù)或查詢該數(shù)據(jù)沒有多大幫助。多年來,為該目的開發(fā)了多種數(shù)據(jù)庫,包括分層和網(wǎng)絡數(shù)據(jù)庫,但現(xiàn)在最常見的是關系數(shù)據(jù)庫。關系數(shù)據(jù)庫基于 E. F. Codd 的想法,E. F. Codd 效力于 IBM,他在 1970 年發(fā)表了原創(chuàng)性論文 “一種針對大型共享數(shù)據(jù)銀行的關系數(shù)據(jù)模型”。如今有多種關系數(shù)據(jù)庫系統(tǒng),包括商用產(chǎn)品(比如 IBM DB2®、IBM Informix 和 Oracle Database)和開源項目(比如 MySQL、PostgreSQL SQLite 和 MariaDB[MySQL 的一個分支])。
關系數(shù)據(jù)庫使用 SQL 作為數(shù)據(jù)定義和查詢語言。
前提條件
要從本系列教程中獲得最大收獲,您應該擁有 Linux 的基本知識和一個正常工作的 Linux 系統(tǒng),您可以在這個系統(tǒng)上實踐文中涵蓋的命令。您應該熟悉 GNU 和 UNIX命令。有時,一個程序的不同版本會以不同方式格式化輸出,所以您的結果可能并不總是與這里給出的清單完全一樣。
文中的 SQL 示例在很大程度上獨立于發(fā)行版和數(shù)據(jù)庫。大部分示例都使用了含 4.2.6 內核的 Fedora 23 上的開源 MariaDB 10.0.21 版。我還提供了一些使用 IBM DB2 Express-C 10.5 版的示例,該版本是 IBM DB2 數(shù)據(jù)服務器在含 2.6.32 內核的 CentOS 6.7 上的一個免費社區(qū)版本。通過比較這些示例,您可以了解您在使用多種數(shù)據(jù)庫系統(tǒng)時可能遇到的差別。如果您需要實現(xiàn)可移植的數(shù)據(jù)庫程序或腳本,則要求您對 ISO/ANSI SQL 標準的了解比我在這里介紹的多一些。
一些數(shù)據(jù)庫操作命令是特定于數(shù)據(jù)庫的。SQL 語法中也存在一些小差異,尤其是對于非標準擴展。在必要時,請參閱您使用的數(shù)據(jù)庫的文檔。
數(shù)據(jù)庫、表、列和行
關系數(shù)據(jù)庫由一組表 組成??梢詫⒈碇械拿啃?數(shù)據(jù)視為一條記錄,表的每列 對應于相應行的記錄中的字段。一列中的數(shù)據(jù)都具有相同的類型,比如字符、整數(shù)、日期或二進制數(shù)據(jù)(比如圖像)。通過以這種方式使用結構化數(shù)據(jù),您可以構造有益的查詢,比如 “找到在某個日期后招聘的所有員工” 或 “找到所有大于 0.25 英畝的地塊”。
關系數(shù)據(jù)庫中的數(shù)據(jù)可能在每行有一個唯一值,比如員工記錄中的員工 ID,市政土地數(shù)據(jù)庫中的地塊 ID,或者計算機系統(tǒng)中的用戶 ID。如果是這樣,您可以為該列創(chuàng)建一個索引,可以將一個這樣的列指定為該表的主鍵。鍵和索引可幫助數(shù)據(jù)庫引擎加速數(shù)據(jù)的檢索。
當您安裝數(shù)據(jù)庫時,您通常會安裝一個數(shù)據(jù)庫服務器。您可能還會安裝一個客戶端,或者可能通過編寫的應用程序或命令行訪問該服務器。服務器通常作為后臺進程運行,您的客戶端或應用程序通常通過 TCP/IP 連接來連接它。您必須采取相應的措施來保護安裝,預防您不想支持的訪問。
許多 Linux 發(fā)行版包含 MariaDB、SQLite、PostgreSQL 和 MySQL 的包。對于本教程,我主要使用了 MariaDB。請參閱 “包含 MariaDB 的發(fā)行版” 或使用適合您的發(fā)行版的包管理工具來檢查已為您的發(fā)行版打包了哪些數(shù)據(jù)庫。MariaDB 是 MySQL 的一個開源分支,所以 mysql 是許多命令名稱的一部分。
MariaDB 入門
這里提供一些簡單技巧,幫助您在打包了 MariaDB 的發(fā)行版上運行它。我在本教程中使用了 Fedora 23。首先安裝 mariadb 和 mariadb-server 包,它們會引入所需的其他一些包。
接下來,采用擁有 root 用戶權限的用戶身份運行 mysql_secure_installation 命令。通過運行此命令,您可以:
為一個 root 數(shù)據(jù)庫用戶設置一個密碼
刪除最初安裝用于測試的匿名用戶
確保該 root 用戶僅能從本地系統(tǒng)登錄
刪除測試數(shù)據(jù)庫(可選)
重新加載特權表,讓之前的更改立即生效
數(shù)據(jù)庫 root 用戶不是系統(tǒng) root 用戶,不應擁有相同的密碼。如果您需要執(zhí)行更改,可以重新運行 mysql_secure_installation。
對于本教程,我使用了來自 GitHub 的 test_db 包中包含的 employee 示例數(shù)據(jù)庫。清單 1 給出了我將該數(shù)據(jù)庫安裝在我的系統(tǒng)上所用的步驟。
清單 1. 安裝示例 employee 數(shù)據(jù)庫
[ian@attic-f23 ~]$ unzip -q test_db-master.zip [ian@attic-f23 ~]$ cd test_db-master [ian@attic-f23 test_db-master]$ mysql -u root -p (
關于Linux必掌握的SQL命令有哪些就分享到這里啦,希望上述內容能夠讓大家有所提升。如果想要學習更多知識,請大家多多留意小編的更新。謝謝大家關注一下億速云網(wǎng)站!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。