如何快速了解資料庫,有否推薦書籍?

題主產品,提問是因為最近發現資料庫是短板,想進階一下,請大家推薦比較基礎的書籍就好,題主有一定的編程基礎。


有一本《SQL語言易學易用》,非常好的入門書,好像後來的譯版改了名字。


資料庫是比較深的知識,我不知道你說的快速是什麼意思,把我認為比較重要的書列在這裡。

基礎

  • Beginning Database Design: From Novice to Professional - *

  • Head First SQL

  • The Manga Guide to Databases

  • Six-Step Relational Database Design: A Step by Step Approach to Relational Database Design and Development

進階

  • SQL Antipatterns: Avoiding the Pitfalls of Database Programming

  • Database Design for Mere Mortals: A Hands-On Guide to Relational Database Design (3rd Edition)

  • Patterns of Data Modeling

NoSQL

  • Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement
  • NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence

MySQL

  • MySQL Cookbook: Solutions for Database Developers and Administrators

  • High Performance MySQL: Optimization, Backups, Replication, and More

  • MySQL High Availability: Tools for Building Robust Data Centers


想要學好資料庫,首先推薦的就是《資料庫系統概論》這本書。這本書相信計算機專業或相關的專業大學裡都會有課程。我可以告訴你的是,好多從事資料庫管理、開發的人員必定都會多次閱讀這本書。


《SQL必知必會》

絕對適合入門,書薄,但是知識全。


你要了什麼?

是要了解資料庫的基本原理?

還是要了解資料庫的基本應用技術?

還是要了解資料庫在產品開發中的工程性?

如果是資料庫的基本原理,那麼非常簡單:就是一種將數據從應用中獨立出來的方法,這個方法可以歸結三個世界,兩次抽象,從真實世界抽象到信息世界,從信息世界抽象到機器世界。除此之外,這個方法還提供了訪問信息世界和機器世界的手段,還要保證世界的可靠性:數據的定義、數據的操縱、數據的約束。至此,就滿足應用對於數據的需要,也滿足了管理的數據的需要,即一少三性。至於信息世界,只要有點數據結構中的抽象數據類型就可以了,至於機器世界,只要有點數據結構的物理存儲知識就可以了。

基本應用技術,也很簡單的,主流就是sql,加一點範式,再加一點關係運算、再加一點優化。如此而已。

什麼,資料庫原理?把數據結構真正讀懂了就可以了,一直讀到外存儲那裡。

但是,工程性就有複雜了。從項目開發的角度、從軟體工程的角度、從項目管理的管理,總之,從工程的角度來說,資料庫與項目運行環境、開發條件、開發人員,業務邏輯糾結在一起。最核心的問題是:在哪裡操縱數據。資料庫自然是存儲數據的,但是資料庫還有操縱數據的功能,還有存儲過程這種具有業務邏輯實現的功能。這是撕逼常發生之處。當然,經常撕逼的地方還有:範式、優化、緩存、線程池這幾個地方。

想必作為一個產品狗,你幾乎不可能自己去開發,無非就是在和開發崗撕逼。

任何技術,都有局限性,從技術本身來說有局限性,從項目工程的實施上來說有局限性,甚至從技術人員、技術團隊上都有局限性。資料庫也是這樣。

但是,沒有一線的技術開發實驗經歷,往往很難透徹地了解資料庫的技術局限性在哪裡。

要不,你就建立老闆,建立合適的機制,建立一個可靠的團隊。

要不,你自己就親自到一線,去了解,在環境和業務的限制下,資料庫技術的適用性。


題主的要求有點看不懂:產品狗,有一定編程基礎,想進階,推薦比較基礎的書籍

我的理解是從0開始入門資料庫原理和設計,如果是這樣,看薩老和王美女主編的課本&<&<資料庫系統概論&>&>就夠了,從原理講到設計和使用,舉例不勝其煩,比較好懂。


牆裂推薦《資料庫系統全書》


給你推薦個很好的,網易很早出了一版,都絕版了,叫《深入淺出MySQL》,記得買那個紅皮的。

裡面真的是深入淺出,我的職業生涯入門書籍,入職新人必讀。


database management systems Database Management Systems (Third Edition),俗稱奶牛書,是國外各大高校的資料庫教材。通俗易懂,只要是有計算機相關背景的都可以學習一下。


head first sql.


推薦閱讀:

國內做分散式資料庫開發的現狀如何,有怎樣的發展前景?
mysql是如何工作的?
使用外鍵約束還是還是自己來寫代碼做約束?
php+mysql開發的網站 如何使用hadoop+hbase+hive,能代替mysql么?
mysql 每次查詢一條數據查10次 和一次查詢10條數據效率有多少差距?

TAG:書籍推薦 | MySQL | 資料庫原理 |