Tuesday, September 1, 2020

 MS-SQL Express 安裝

      之前使用的 SQL Server 2005 只有支援到Windows 2008 平台,自 2019 年度後相關的租用虛擬主機已經不再支援了 2008 ,原來的Database 服務先行評估使用 SQL Server Express 2019 測試,SQL Server Express 版本免費,使用上單個資料庫限制  10 GB,沒有 SQL Agent服務,其他功能限制可以參考 Wiki ,小的系統不失為一個中小企業好用的方式。這裡介紹一下安裝步驟。 

Express 主檔案安裝

- Step 1 Download : SQL Server 2019 Express 下載 https://www.microsoft.com/zh-tw/sql-server/sql-server-downloads 
  • - Step 2 安裝檔案 : ..\SQL2019-SSEI-Express.exe 或是SQL2019-SSEI-Expr.exe
    • 選用自訂安裝
      • 預設安裝也可以 ,後面再調整相關設定
    • Feature Select
      • Instance Feature 
        • V Database Engine Service
      • Shared Feature
        • V All
        • LocalDB
      • Instance root Directory : C:\Program Files\Microsoft SQL Server\
      • Shared feature directory :  C:\Program Files\Microsoft SQL Server\
      • Shared feature directory (x86) :  C:\Program Files (x86)\Microsoft SQL Server\
    • Instance Configuration
      • Name Instance : SQLExpress
    • Server Configuration :
      • SQL Server Database Engine,
        • Account Name : NT Service\MSSQL$SQLEXPRESS ,
        • Startup Type : Automatic
      • SQL Server Browser 
        • Name : Account Name : NT Authority\Local,
      • Startup Type : Automatic
    • Server Configuration
      • Mixed Mode
      • sa Password:<UserDefine>

SQL Server Configuration Manager 連線方式設定

  • - Step 3 啟動 :SQL Server Configuration Manager : 選取 SQL Server Network Configuration > Protocols For SQL EXPRESS 
    • > TCP/IP : Enable
    • > TCP/IP > IP Address > >> IPAll >  TCP Port : 1433



Database 管理工具 SSMS 安裝

SQL Express 新增使用者

  • - Step 5 啟動 SQL Server Management Studio(SSMS) ,connect to Server , 可以選用 SQL Server Authentication 或是 Windows Authentication  : 
  • 安全性 > 登入 
    • 建議不要使用 sa 使用者登入或是系統預設登入方式,另外建立使用者限制最小的使用權限以便提高使用上安全等級.再使用自定義的使用者進行軟體連線.

    • 新增使用者指令(App/應用服務 連線時候使用)

    • 範例 : CREATE LOGIN dbuser WITH PASSWORD = 'dbpassword'; 
      GO

    • 建議提供自行建立的 使用者權限 : DELETE,EXECUTE, Insert ,Select,Update

    • 指令範例 : use [database1] ;
      GRANT DELETE TO [dbuser]
      GRANT EXECUTE TO [dbuser]
      GRANT Insert TO [dbuser]
      GRANT Select TO [dbuser]
      GRANT Update TO [dbuser]

SQL Server 還原和權限設定

  • - Step 6 -1 DB 還原選單 

    • - Step 6 -2  DB 還原選取之前備份的 .bak 檔案,Option  選項視需要再選取相關設定

  • - Step 7 權限設定 :
    • 1)刪除 DB 回存資料舊的使用者 & 使用者對應,再重新新增 db 使用者,安全上得考慮,避免直接使用 sa 或是系統授權使用者方式使用 db

      • use [database1] ; 

        • DROP USER [dbuser] ; 

        • CREATE USER [dbuser] FOR LOGIN [dbuser] ;

    • 3)指定 增加每一個 DB 權限,一般用到的話只要提供以下五個權限即可.

      • use [database1] ;

      • GRANT DELETE TO [dbuser]

      • GRANT EXECUTE TO [dbuser]

      • GRANT Insert TO [dbuser]

      • GRANT Select TO [dbuser]

      • GRANT Update TO [dbuser]

  • 測試 sqlcmd

    • 測試 >

      • sqlcmd -U dbuser -P dbpassword -S HOME105\SQLEXPRESS -q "SELECT TOP (1000) * FROM [database1].[dbo].[Company]"

  • - Step 8 其他資料庫復原可以參照 Step 6~7

PS: 
 - SQL Server Express 沒有支援SQL Agent,所以定期備份設定的話,需要自行配合批次檔案和SQL 指令也是可以達到同樣的備份方式。



No comments:

Post a Comment