林鼎淵inDean LinMongoDB 與 MySQL 建立 Index 對 Read/Write 的效能影響儘管網路上有許多資料顯示 MongoDB 建立 Index 後的效能比 MySQL 好,但這篇文章我想要透過程式來驗證兩者的寫入、讀取、資料大小差異。May 25May 25
林鼎淵inDean Lin當資料庫遇到瓶頸,你會如何處理? ── 下班有約系列文除非真的撐不住了,否則我覺得應該沒幾間公司會想換資料庫。 今天跟大家分享一個資料庫遇到瓶頸必須遷移的的案例。May 22May 22
林鼎淵inDean Lin放完假後 MySQL Server 就掛了,不是每個錯誤都能靠 Google 找到解答如果你用上圖的錯誤訊息去 Google 搜尋,相信會得到很多解答;但這篇文章遇到的問題,如果用關鍵字搜尋是找不到真正解答的;也因為這次的經驗讓我對 Ubuntu Server、MySQL、apt-mark 有更深一層的認識。Jun 21, 2022Jun 21, 2022
林鼎淵inDean LinTable Join 時,選擇文字欄位(VARCHAR)與數值欄位(INTEGER)在效能上的差異因為剛好朋友在專案的搜尋上遇到效能瓶頸,在看過程式碼後,發現他在 Table 做 Join 時都是挑選文字欄位,因此研判這應該就是導致效率低下的主要原因;為了實驗文字欄位(VARCHAR)與數值欄位(INTEGER)在 Join…May 13, 2022May 13, 2022
林鼎淵inDean Lin初探 sequelize,在 Node.js 快速建立 Migration、Seeder( MySQL)最近在尋找 Node.js 裡面方便操作 Migration、Seeder 的套件,逛著逛著發現 sequelize 在 GitHub 上擁有超高人氣;抱著踩雷的心態來嘗試,於是便寫了這篇 sequelize 的筆記,希望可以幫助到第一次使用 sequelize 的朋友們。May 13, 2022May 13, 2022
林鼎淵inDean LinSQL LEFT JOIN only last record of right table — 4 種解決方案最近工作時剛好遇到了一個需求:「需要取得每位使用者最後的工作記錄。」使用者是一張 table,工作記錄又是ㄧ張 table;原本以為這個簡單的需求用個 leftJoin 就能瞬間搞定,結果卻搞了自己快一個晚上…因此決定把解決方案放上來,給有遇到相同問題朋友們。Jan 12, 2022Jan 12, 2022
林鼎淵inDean Lin用 Node.js 享受 Cloud MongoDB 吧你知道有免費的 Cloud MongoDB 資源可以使用嗎?雖然跟著官方教學走就能順利使用,但有些小細節我還是補充一下避免新手擔心,希望大家可以無障礙的使用這些資源~Aug 26, 2021Aug 26, 2021
林鼎淵inDean Lin你在 Table 建立的 Index 真的有效嗎?用範例帶你理解 Coverage Index 的意義我們會在 Table 中建立 Index 以增加搜尋的效率,但建立 Index 的同時也會影響到資料 insert、update、delete 的效率;所以我們在建立 Index 時需要抱持謹慎的態度,這篇文章將帶大家了解 Coverage Index (覆蓋索引)的意義。Aug 20, 2021Aug 20, 2021
林鼎淵inDean Lin解決 MySQL 主從複製的延遲問題 (Replication lag)Slave DB 上的資料從 Master DB 複製過來時會有延遲,所以會造成用戶看到舊的資訊;在過去想解決這個問題真的需要 18 般武藝,但到了 MySQL 5.7 版後官方說只要調整一個設定就能解決,具體做法讓我們看下去。Mar 29, 2021Mar 29, 2021
林鼎淵inDean Lin用 sysbench 測試 MySQL 性能 — 在 mac & ubuntu 上的安裝與使用sysbench 是我目前使用上最順手的一個測試工具,安裝、使用都非常容易,除了資料庫的測試外他還能對 CPU、Memory…做測試,本篇會詳細說明如何使用它來做 MySQL 性能測試,其他的功能可以參考文末附的連結。Mar 29, 2021Mar 29, 2021
林鼎淵inDean Lin理解資料庫『悲觀鎖』和『樂觀鎖』的觀念沒有經過實際操作的理論都只是空談,這篇文章我會附上自己的MySQL 語法 方便大家在自己的環境中驗證這個資料庫的觀念,讓日後處理併發問題時有更完整的思路。Mar 12, 2021Mar 12, 2021
林鼎淵inDean Lin線上 SQL 語法測試網站(SQL fiddle、MySQL Online)當朋友問你 SQL 語法問題時如果沒有現成的資料庫真的很難幫上忙,並且也不確定自己的回答是不是真的能解決問題;今天就來介紹兩個我常用的 SQL 語法測試網站,並透過解說朋友遇到的題目讓大家快速了解網站的使用方式。Feb 26, 2021Feb 26, 2021
林鼎淵inDean Lin0難度讓你在Server安裝設定MySQL這是一篇只要複製貼上,注意小細節就能讓你輕鬆在ubuntu server設定好MySQL的文章Jun 16, 2020Jun 16, 2020
林鼎淵inDean Lin用 Node.js + Redis 解決高併發秒殺問題商城在高併發環境下除了要考量到使用者體驗外,還要處理「超賣」的問題;Redis 是一種記憶體資料庫,它有高讀寫效率的特性、能承受高 qps,而這篇文章則是運用它獨特的「鎖」解決超賣問題。Aug 18, 2021Aug 18, 2021
林鼎淵inDean Lin手把手帶你在 MacOS 安裝 Redis &Another Redis Desktop Manager本篇文章除了帶你安裝 Redis,更分享一個超好用的 Redis GUI 神器;整個操作流程不超過 10 分鐘,想入門 Redis 看這篇文章就對啦!Aug 11, 2021Aug 11, 2021
林鼎淵inDean LinUbuntu 用 Atlas 實現 MySQL Proxy 讀寫分離 read/write splitting如果單純把 DB 分成 Master 及 Slave 並不能真正解決平衡負載問題,因為每台 server 是獨立的 ip,使用者在存取資料庫的時候並不知道要使用哪一台 server 😅;這篇文章會教你如何設定一台 Proxy server,準確地將 SQL 指令正確分流Mar 29, 2021Mar 29, 2021
林鼎淵inDean LinMySQL Master Slave Replication 主從式架構設定教學Master Slave Replication 是一個 Web 工程師需要具備的基礎概念,我們可以透過這個技術有效的降低 Database server 負荷,同時給使用者提供更穩定順暢的體驗;本文除了讓你了解這個技術的原理外還會以 MySQL…Mar 25, 2021Mar 25, 2021