分類:SQL server

SQL Server 2012遠端連線管理設定

SQL Server 2012遠端連線管理設定

  1. 先來連線看看

 

2.遠端SQL server更改驗證模式,將Windows驗證修改為「混合模式」,也就是「SQL Server及Windows驗證模式」

 

3.變更sa密碼

 

4.變更SQL SERVER網路組態:啟用TCP/IP通訊協定,並修改TCP通訊埠

選擇「IP位址」 → 找到「IPAll」下方會有兩個項目:請刪除「TCP動態通訊埠」後面的隨機數字,然後在「TCP通訊埠」輸入「1433」,這是SQL Server預設連接通訊埠


 

5.變更SQL SERVER服務:要提供SQL Server遠端連線的功能,除了SQL Server是一定要啟用之外,如提供Management Studio進行遠端管理,還需要確定「SQL Server Browser」這個服務是啟用的,可以將啟動模式設定為「自動」,如未啟動,需將其啟動。

 

6.重新啟動,SQL SERVER服務:在第三步驟中進行了通訊協定的更改,需將SQL SERVER服務重新啟動才能讓設定生效

 

7.先在SQL server端停用防火牆,在使用者端使用Management Studio進行遠端管理測試


 

8.SQL server端重新啟用防火牆,並進行防火牆進階設定,新增連入規則以允許遠端連線,並防止1433 port攻擊。


(1)新增允許連入SQLserver.exe
輸入規則 / 新增 / 程式 / 路徑(如下) / 允許連線 / 套用規則(全套用) / 命名 SQLserver
%ProgramFiles%\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\Binn\sqlservr.exe
完成新增的SQLserver規則,還要定義可以使用的IP網段,以避免不速之客的連線攻擊。修改剛新增的規則,在網域的地方的遠端IP新增允許的網段,如 : 10.24.183.0/24 或IP : 10.241.183.237

2. 新增允許連入SQLbrowser.exe
%ProgramFiles% (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe



 

9.連線測試


 

10.更改防火牆允許連線的IP,再連線測試能不能完成連線

 

資料來源請參考

ASP.NET AND SQL SERVER 2005 EXPRESS遠端連線的方法

http://jdev.tw/blog/3400/sql-server-2012-express-sql-browser

 

SQL Server 2012 管理

SQL Server 2012 管理

1.新增資料庫

 新增資料表:輸入相關欄位名稱與資料類型,ProductUid的資料類型為int,識別規格為是,並將其設定為主索引鍵。依此方法分別建立Product、Device、Manufacture及Supplier共四個資料表。

欄位資料
Product 資訊設備項目
===============================================
ProductUid 產品Uid
Type 產品類型:個人電腦、筆記型電腦、平板電腦
ManufacturerUid 製造商:Acer、Asus、HP、D-link
Name 產品品稱:個人電腦
Description 特徵及說明:ACER VERITON L480
PurchaseDate 購置日期:’99/02/10
Valid 使用年限:4
Price 現值金額:18996
Memo1 備註一:98年度多功能E化專科教室…
Memo2 備註二:依據..號函辦理
GetSource 撥入、採購
BudgetarySource 公務預算、新北市地方教育發展基金
GetDate ’99/02/10
Property 1.動產、5.非消耗品
ImgUrl 產品圖片
WebUrl 產品參考網頁
Detail 產品說明
SupplierUid 供應商、維護商
[ProductUid] [int] IDENTITY(1,1) NOT NULL,
[Type] [nchar](3) NULL,
[ManufacturerUid] [int] NULL,
[Name] [nvarchar](50) NULL,
[Description] [nvarchar](50) NULL,
[PurchaseDate] [smalldatetime] NULL,
[Valid] [int] NULL,
[Price] [int] NULL,
[Memo1] [ntext] NULL,
[Memo2] [ntext] NULL,
[GetSource] [nchar](10) NULL,
[BudgetarySource] [nchar](10) NULL,
[GetDate] [smalldatetime] NULL,
[Property] [nchar](2) NULL,
[ImgUrl] [nchar](50) NULL,
[WebUrl] [nchar](150) NULL,
[Detail] [ntext] NULL,
[SupplierUid] [int] NULL

 

Device資訊設備財產資料
===============================================
DeviceUid DeviceUid
ProductUid ProductUid
Classification 財產編號 分類號
SequenceNo 財產編號 流水號
StorageUnits 保管單位:教務處
Custodian 保管人:XXX
EndUser 使用人
StoragePos 存放地點一:資訊中心
StoragePosNo 存放地點一:328
Status 使用狀態
InventoryResult 盤點結果
InventoryDate 盤點日期
UpdateUser 更新人員
UpdateDate 更新日期
Memo
[DeviceUid] [int] IDENTITY(1,1) NOT NULL,
[ProductUid] [int] NULL,
[Classification] [nchar](10) NULL,
[SequenceNo] [nchar](10) NULL,
[StorageUnits] [nchar](2) NULL,
[Custodian] [nchar](30) NULL,
[EndUser] [int] NULL,
[StoragePos] [nvarchar](20) NULL,
[StoragePosNo] [nchar](10) NULL,
[Status] [nchar](2) NULL,
[InventoryResult] [nchar](2) NULL,
[InventoryDate] [smalldatetime] NULL,
[UpdateUser] [int] NULL,
[UpdateDate] [smalldatetime] NULL,
[Memo] [ntext] NULL

 

Manufacturer 製造商
===============================================
ManufacturerUid uid
CName 中文名稱
EName 英文名稱
WebUrl 官網
Tel 電話
Fax 傳真
Email Email
Address 住址

[ManufacturerUid] [int] IDENTITY(1,1) NOT NULL,
[CName] [nvarchar](50) NULL,
[EName] [nchar](30) NULL,
[WebUrl] [nchar](50) NULL,
[Tel] [nchar](15) NULL,
[Fax] [nchar](15) NULL,
[Email] [nchar](30) NULL,
[Address] [nvarchar](50) NULL

 

Supplier 供應商
===============================================
SupplierUid Uid
Name 供應商名稱
Contact 聯絡人
ComTel 電話
Mobile 行動電話
Address 住址
WebUrl 官網

[SupplierUid] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NULL,
[Contact] [nvarchar](10) NULL,
[ComTel] [nchar](15) NULL,
[Mobile] [nchar](15) NULL,
[Address] [nvarchar](100) NULL,
[WebUrl] [nchar](100) NULL

3.由查詢視窗以SQL語法建立資料庫

 

建立以上四個資料表的SQL指令碼
CREATE TABLE [dbo].[Product](
[ProductUid] [int] IDENTITY(1,1) NOT NULL,
[Type] [nchar](3) NULL,
[ManufacturerUid] [int] NULL,
[Name] [nvarchar](50) NULL,
[Description] [nvarchar](50) NULL,
[PurchaseDate] [smalldatetime] NULL,
[Valid] [int] NULL,
[Price] [int] NULL,
[Memo1] [ntext] NULL,
[Memo2] [ntext] NULL,
[GetSource] [nchar](10) NULL,
[BudgetarySource] [nchar](10) NULL,
[GetDate] [smalldatetime] NULL,
[Property] [nchar](2) NULL,
[ImgUrl] [nchar](50) NULL,
[WebUrl] [nchar](150) NULL,
[Detail] [ntext] NULL,
[SupplierUid] [int] NULL,
CONSTRAINT [PK_Product] PRIMARY KEY CLUSTERED ( [ProductUid] ASC )
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
CREATE TABLE [dbo].[Device](
[DeviceUid] [int] IDENTITY(1,1) NOT NULL,
[ProductUid] [int] NULL,
[Classification] [nchar](10) NULL,
[SequenceNo] [nchar](10) NULL,
[StorageUnits] [nchar](2) NULL,
[Custodian] [nchar](30) NULL,
[EndUser] [int] NULL,
[StoragePos] [nvarchar](20) NULL,
[StoragePosNo] [nchar](10) NULL,
[Status] [nchar](2) NULL,
[InventoryResult] [nchar](2) NULL,
[InventoryDate] [smalldatetime] NULL,
[UpdateUser] [int] NULL,
[UpdateDate] [smalldatetime] NULL,
[Memo] [ntext] NULL,
CONSTRAINT [PK_Device] PRIMARY KEY CLUSTERED ( [DeviceUid] ASC )
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

CREATE TABLE [dbo].[Manufacturer](
[ManufacturerUid] [int] IDENTITY(1,1) NOT NULL,
[CName] [nvarchar](50) NULL,
[EName] [nchar](30) NULL,
[WebUrl] [nchar](50) NULL,
[Tel] [nchar](15) NULL,
[Fax] [nchar](15) NULL,
[Email] [nchar](30) NULL,
[Address] [nvarchar](50) NULL,
CONSTRAINT [PK_Manufacturer] PRIMARY KEY CLUSTERED ( [ManufacturerUid] ASC )
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
CREATE TABLE [dbo].[Supplier](
[SupplierUid] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NULL,
[Contact] [nvarchar](10) NULL,
[ComTel] [nchar](15) NULL,
[Mobile] [nchar](15) NULL,
[Address] [nvarchar](100) NULL,
[WebUrl] [nchar](100) NULL,
CONSTRAINT [PK_Supplier] PRIMARY KEY CLUSTERED ( [SupplierUid] ASC )
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
ON [PRIMARY]) ON [PRIMARY]

 

4.新增資料庫圖表:建立各資料表間的關連,如出現無法安裝資料庫圖表支援物件,請參考




 

5.修改資料表內容:在要修改的資料表上 右鍵 / 設計 / 插入或刪除資料行 / 儲存,也可以利拖曳的方式改變欄位的上下順序,變更資料欄位的寬度時要考慮到是否會將超出寬度的原有資料遺失。

資料表修改後,存檔時可能會出現「不允許儲存變更」的錯誤,從 SQL Server 2008 開始 Management Studio 管理工具預設會防止儲存需要資料表重建的變更(Prevent saving changes that require table re-creation),意思是說,當你在修改資料庫表格結構時,當修正的幅度過大,例如移除欄位、變更欄位順序、變更欄位型態、變更欄位長度、變更是否允許 NULL等狀況,預設都會拒絕你變更資料表結構,導致按下儲存按鈕之後並沒有真正的變更資料結構(Schema)。

解決此問題的方法就是去變更 SQL Server Management Studio (SSMS) 的選項設定,步驟如下:開啟「工具」→「選項」,切換到「設計師」類別,將「防止儲存需要資料表重建的變更」的核取項目取消勾選即可,並按下確定按鈕即可。

 

6.資料編輯:請編輯Manufacturer Supplier 資料內容。

 

7.選取資料

8.資料庫查詢

 

9.新增登入


 

10.卸離資料庫


 

11.附加資料庫

如無法匯入,可將匯入來源放在DATA資料中。

 

資料來源請參考

SQL Server 無敵手冊

 

SQL Server 2012(sp2) Express安裝

1. 下載SQL Server 2012 Service Pack 2 Express: 依作業系統型選擇

Express 資料庫伺服器:SQLEXPR_x64_CHT.exe

管理工具:SQLManagementStudio_x64_CHT.exe

也可以考慮  下載Microsoft® SQL Server® 2014 Express

 

2.安裝SQL Server 2012(sp2) Express資料庫伺服器:SQLEXPR_x64_CHT.exe,新安裝請選擇獨立安裝

 

3.授權條款

 

4.線上更新程式

 

5.整合更新程式

 

6.選擇安裝項目

 

7.執行個體名稱使用預設值SQLExpress即可,這樣在Visual Studio一起使用時會比較方便

 

8.伺服器組態,預設會自動啟動SQL Server Database Engine,如要接受遠端連線管理,Browser 也要改成自動啟動

 

9.驗證模式,可先使用Windows 驗證模式,安裝完成後,再設定為混合模式,或直接使用混合模式,sa 帳戶是已知的 SQL Server 帳戶,需針對 sa 登入使用一個增強式密碼。變更驗證模式請參考https://msdn.microsoft.com/zh-tw/library/ms188670.aspx。

 

10.安裝中

 

11.安裝成功

 

12.SQLManagementStudio 伺服器管理工具:SQLManagementStudio_x64_CHT.exe

 

13.整合更新程式

 

14.安裝類型,選擇將功能加入至現有執行個體

 

15.選擇安裝項目

 

16.是否參加錯誤報告傳送,協助改進未來版本

 

17.軟體安裝中

 

18.安裝完成

 

19.執行,所有程式 Microsoft SQL server 2012 / SQL server Management Studio

如為本機登入,伺服器名稱可改 (local)\SQLEXPRESS 或 .\SQLEXPRESS

 

資料來源請參考http://blog.kkbruce.net/2012/10/microsoft-sql-server-2012-express-donwload-and-install.html