The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

在 Docker 或 Kubernetes 執行 SQL Server Linux 容器應注意記憶體限制問題

前幾天一樣在客戶端進行 Kubernetes 教育訓練的時候,發現有少部分學員無法正確部署應用程式,我們的例子是一個 ASP.NET Core 網站,搭配一個 SQL Server Linux 容器,然而在練習實作 livenessProbe 的時候,卻發現有些人怎樣都無法將 SQL Server Linux 容器啟動,但是若將 livenessProbe 設定移除,服務可以啟動。若將 Pod 中容器記憶體限制移除,服務也可以順利啟動。是不是有點詭異?這篇文章我就來說說這個來龍去脈!

... 繼續閱讀 ...

介紹好用工具:mssql-scripter (自動將完整資料庫匯出成 T-SQL 的神器)

遷移 SQL Server 資料庫是一件感覺好像很簡單,但做起來可能會很麻煩的工作。其實透過 SSMS 就可以做到很多種不同的資料庫遷移方法,但我想找一個能夠更方便的方式,透過命令列的方式自動化整個遷移過程,最近我找到了這個 mssql-scripter 工具,完全可以符合我的需求。這篇文章我就來說說我的應用情境,以及 mssql-scripter 工具的使用方式。

... 繼續閱讀 ...

使用 SqlPackage 對 SQL Server 資料庫進行匯出/匯入/擷取/發行/編寫/報告

今天有同事來問我,他用 SQL Server 資料庫專案管理 SQL Server 資料庫的結構描述 (Schema),在開發環境與測試環境的更新與比對都沒有問題,但偏偏正式機上的 SQL Server 資料庫因為防火牆的關係,通常無法直接從本機直接連接,這導致他沒有辦法比對正式資料庫開發資料庫之間的差異,如果有人異動了正式資料庫,日後的資料庫更新就很容易出問題。這篇文章,我就來介紹這套 SqlPackage 命令列工具。

... 繼續閱讀 ...

如何正確的授權 Azure SQL Database 資料庫權限給開發人員

我們公司許多開發測試用的資料庫都直接使用開在 Azure SQL Database 中,然而如果錯誤的授權可能會導致權限過大,甚至有可能刪除資料庫本身。本篇文章我打算分享幾個建立 SQL Server 登入與資料庫使用者的過程,幫助管理者更加正確的授權給開發人員與應用程式。

... 繼續閱讀 ...

使用 Docker 執行 SQL Server on Linux 容器之常用工具與命令

最近因為正在進行【ASP․NET Core 3 開發實戰:從入門到進階】課程,上課的學員中使用 macOS 來學習 .NET Core 的人越來越多,當練習到 ASP․NET Core 搭配 Entity Framework Core 的時候,因為會用到 SQL Server 進行練習,所以本篇文章將分享如何利用 Docker 執行 SQL Server on Linux 容器,並分享幾個常用的工具命令與使用範例。

... 繼續閱讀 ...

如何下載與升級 SQL Server Express LocalDB 到最新版

早期的 SQL Server Express LocalDB 還蠻簡單的,隨便搜尋就可以下載的到,但是這幾年微軟的組織發展太快,網站的結構也有大幅異動,許多以前可以下載到的連結現在也都失效。不單單失效而已,我光是想要下載最新版 LocalDB 都要花上好幾分鐘才能找到連結。

... 繼續閱讀 ...

Visual Studio / C# / ASP.NET MVC / SQL Server 新手上路之學習資源整理

遙望十多年前,我剛出社會的時候,拿著我在大學時期接案的 74 件作品與大學四年的程式開發經驗進入職場,當時所學會的東西跟現在比起來可謂是九牛一毛,在累積了幾年的經驗之後,回頭看見有許多莘莘學子還在為了該學些甚麼而困擾,這便萌生這篇文章的契機,希望整理一些適合新手上路的學習資源,讓大家更有方向的踏入 .NET 開發生涯。

... 繼續閱讀 ...

SQL Server Migration Assistant v5.3 for MySQL 使用心得分享

這兩個月竟然有兩次機會幫客戶從 MySQL 轉到 SQL Server 上,一次負責轉移資料到雲端的 SQL Database 上,另一次負責移轉資料到本地的 SQL Server 上,這兩次我都是用 Microsoft SQL Server Migration Assistant v5.3 for MySQL 來執行移轉任務,轉換的過程中遇到了不少問題,所以特地撰文紀錄,以免日後再次遇到相同的困擾。

... 繼續閱讀 ...