MySQL 數據庫介紹

數據庫背景知識 • 數據+庫:將信息(數據)按照計算機可識別的方式規則存放在磁盤 庫中,並提供一系列可供讀寫的方式 • 相比較於磁盤文件,數據庫最大的特色是提供了很是靈活的接口、 方式能夠獲取完整數據或者特定部分數據的方式(SQL);並提 供了一套完整管理數據的方法(存儲結構,備份恢復等) • 爲何要存儲數據? • 數據要被隨時隨地反覆使用,不是一次性消耗品 • 數據要被記錄,防止遺忘 數據庫背景知識 試想一個學校的選課系統,其實就是程序與後臺數據庫之間的數據 交互。後臺數據庫負責記錄每一個課程信息,學生信息,學生與課程 的對應關係等。 • 學生登陸本身的帳號:程序提取後臺數據庫中登陸學生對應學號的全部信息,並按照 必定的格式展現到電腦上 • 學生選定課程:程序將電腦上的學生添加的信息按照必定的格式記錄到數據庫中的課 程 數據庫在企業中的使用 • 企業不管大小,其平常經營活動都會涉及到數據存儲,尤爲是互 聯網公司,都會選擇數據庫做爲存儲數據的重要甚至惟一渠道, 這些數據涵蓋方方面面: • 客戶數據 • 員工數據 • 財務數據 • 交易數據 • 物流數據 • 運營數據 • 等等 數據庫發展歷史 • 1964年,美國通用電氣開發出第一套數據庫系統 • 1970年,提出關係型數據庫模型 • 1974年,辯論及研討,確立關係數據庫爲現代數據庫產品的主流 • 1974年,第一次提出SQL(Structured Query Language)概念 • 1986年,SQL正式成爲關係型數據庫的標準語言,簡稱SQL-86標 準 • SQL語言陸續經歷了SQL-89標準和SQL-92標準,以及目前的SQL3標 準 • 互聯網web2.0時代以後,非關係型數據庫陸續火熱起來 常見的數據庫類型 • 關係型數據庫類型 • 目前市場上佔主要份額的數據庫類型,以二維表格(行和列,相似excel)來存 儲數據,表格與表格之間的數據關係用字段引用來表示 • Oracle, SQL Server, MySQL, DB2等 • 非關係型數據庫類型 • 出現時間較短,拋棄關係型死板的數據存儲方式,提供了更加靈活的方式 • 面向高性能併發讀寫的key-value數據庫: key-value數據庫的主要特色即便具備極高的併發讀寫性能,Redis,Tokyo Cabinet,Flare就是 這類的表明 • 面向海量數據訪問的文檔型數據庫: 這類數據庫的特色是,能夠在海量的數據中快速的查詢數據,典型表明爲MongoDB以及 CouchDB • 面向可擴展性的分佈式數據庫: 這類數據庫想解決的問題就是傳統數據庫存在可擴展性上的缺陷,典型表明爲Cassandra等 數據庫類型在企業中的選擇 • 經常使用數據會存放在關係型數據庫中 • 逐步考慮使用非關係型數據庫做爲部分業務的支持 •但, 關係型數據庫仍是主流 MySQL數據庫介紹 • MySQL是一種開放源代碼的關係型數據庫管理系統(RDBMS), MySQL數據庫系統使用最經常使用的數據庫管理語言--結構化查詢語 言(SQL)進行數據庫管理。 • MySQL的歷史最先能夠追溯到1979年,那時Oracle也纔剛剛開始, 微軟的SQL Server影子都沒有。 • 在2008年1月16號 MySQL被Sun公司收購。 • 2009年,SUN又被Oracle收購 • 體積小、速度快、整體擁有成本低,尤爲是開放源碼這一特色, 使得許多企業選擇了MySQL做爲數據庫 數據庫工程師在通常企業中的職責 • 數據庫開發工程師 a. 負責公司業務數據庫系統的模型設計,表結構設計 b. 負責數據處理中的語句實現,存儲過程邏輯實現 c. 負責指導開發人員對語句的性能優化和指導 • 數據庫管理員(database administrator、DBA) a. 負責公司業務數據庫系統的部署實現 b. 負責數據庫系統的高可用性,備份恢復,性能調憂,監控等實現 • 數據庫架構師 a. 統籌公司業務數據庫系統各個層面的技術實現 b. 指導數據庫開發工程師和管理員在各個環節的工做,提供更優的方案 數據庫工程師在企業中的定位 • 從職能角度 • 數據儼然已經成爲全部企業的重要資產,互聯網企業更是將數據做爲自 己的生命線,試想一下百度搜索沒有後臺數據、阿里淘寶沒有店鋪和商 品數據會怎樣。一個優秀的數據庫工程師一般掌握着企業的核心價值, 保障數據服務持續正常運轉,因此在公司地位相對比較高。責任越大, 地位越高,薪資越高 • 高速社會要求高速的系統,如今的系統性能瓶頸已經不是傳統的硬件瓶 頸,而是後臺程序和數據處理的瓶頸,優秀的數據庫工程師每每能解決 其性能問題,從而是系統運轉性能提高几十倍甚至百倍 • 從競爭角度 • 一般數據庫工程師在企業中的人數相比其餘技術工程師相對較少(1:10 或更高),「物以稀爲貴」,並且一般薪資高低是由你在公司是否可被 替代所決定,同工種下人數較少意味着不可替代 數據庫工程師的薪資狀況分析 數據庫工程師的薪資狀況分析 數據庫工程師的薪資狀況分析 數據庫工程師的薪資狀況分析 數據庫工程師的薪資狀況分析 數據庫工程師的薪資對比 • 一個工程師的雙倍薪水的真實案例 數據庫工程師職業的優劣勢 • 優點: • 「不吃青春飯,越老越吃香」:更加看重工做經驗,生命週期長 • 公司地位相對較高,領導比較看重,薪資也相對較高 • 劣勢: • 和運維體系有交叉,因此會比較辛苦,須要隨時待命,防止數據庫出問 題 • 同一個公司數據庫崗位人數較少,會比較孤獨 通用數據庫對象中英文介紹 • 數據data • 指對客觀事件進行記錄並能夠鑑別的符號,在計算機系統中存儲爲能夠被識別的信息 • 數據庫database • 存放具體數據的最大的邏輯對象,一般按需求將同一項目所屬的數據統一放在一個數 據庫中,也能夠建立多個數據庫 • 數據庫管理系統dbms(database management system) • 是一種操縱和管理數據庫的大型軟件,用於創建、使用和維護數據庫,簡稱DBMS,目 前分爲關係型和非關係型數據庫管理系統兩種 • 關係型數據庫管理系統rdbms(relational dbms) • 是以關係模型爲基礎創建的數據庫管理軟件,典型表明爲Oracle, MySQL, SQL Server等 • 實例instance • 數據庫管理軟件安裝以後在服務器上啓動起來就稱爲啓動了一個實例,一般一個服務 器上只啓動一個數據庫實例,但也有啓動多個實例的,一個實例能夠包含多個數據庫 • 數據庫對象database object • 數據庫中建立的用來存儲,操做數據的對象,好比表,字段,索引,存儲過程等 通用數據庫對象中英文介紹 • 表table • 數據庫對象中的一種,用來存儲相同屬性的數據,相似Excel表格的sheet • 字段field,列column,屬性attribute • 表中數據的組成部分,相似Excel表格中的列 • 類型type • 每一個字段屬性之一,表明該字段下的全部數據以什麼形式呈現,好比整數、字符串等類型 • 鍵值key • 數據表的一個屬性,能夠指定主鍵,外鍵 • 索引index • 在數據庫管理系統中一般爲加速數據讀取速度而建立的一種數據結構 • 視圖view • 爲(字面上)簡化部分數據的獲取方法而建立的定義 • 存儲過程sp(stored procedure) • 在數據庫內部建立的具備一系列數據處理邏輯的方法 • 觸發器trigger • 當數據庫表發生修改操做時自動觸發某些數據處理的方法 通用數據庫對象中英文介紹 • 數據庫服務器database server • 特指運行數據庫實例的物理服務器或者虛擬服務器 • 主鍵primary key • 數據表中定義的用來惟一肯定表中各行數據的一個或幾個字段 • 外鍵forerign key • 當數據表中的某一個或幾個字段的值來源於某個父表時,則能夠建立兩個表之 間的數據映射關係 • 惟一unique • Primary key和unique index均可以做爲約束表中這一列或幾列的數據不重複 • 性能performance • 調優tuning 通用數據庫對象中英文介紹 • 備份backup • 將數據庫中的全部數據和對象或者指定的數據和對象導出成文件形式存儲 • 恢復restore • 利用以前的備份文件將數據庫中的指定對象和庫還原到備份文件中的狀態 • 用戶user • 指爲訪問數據庫中的數據而建立的權限 • 受權grant • 授予某個數據庫用戶某個權限的動做 • 回收revoke • 將某個數據庫用戶的某個權限回收的動做 • 權限privilege 通用數據庫對象中英文介紹 • 查詢select • 數據庫中瀏覽數據所提供的方法 • 修改update • 數據庫中修改數據所提供的方法 • 刪除delete • 數據庫中刪除原有數據所提供的方法 • 添加insert • 數據庫中新增數據所提供的方法 • SQL語句SQL statement • 對數據庫中數據進行操做、管理的一套語法 • 數據庫架構database architecture • 指數據庫設計工做中對數據庫一個或多個實例的部署,之間的數據協同,高可 用性,併發性等特性所作的統一規劃 THANKSweb

相關文章
相關標籤/搜索