gioi thieu vè sql

61
 1.  BAN CH  ĐẠO CÔNG NGH THÔNG TIN CA CƠ QUAN ĐẢNG *** GIÁO TRÌNH SQL S RV R VÀ QU  N TR  HÀ NI, 2004

Upload: thu-thuy-tran

Post on 11-Jul-2015

1.692 views

Category:

Documents


0 download

TRANSCRIPT

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 1/61

 

1. 

 

BAN CHỈ ĐẠO CÔNG NGHỆ THÔNG TIN CỦA CƠ QUAN ĐẢNG

***

GIÁO TRÌNH

SQL SERVER VÀ QUẢN TRỊ 

HÀ NỘI, 2004

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 2/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 1

MỤC LỤC

CHƯƠ NG I: GIỚ I THIỆU CHUNG VỀ SQL SERVER......................................4 

I. SQL SERVER LÀ GÌ? ...................................................................................4 

1. Lịch sử phát triển .............................................................................. 4 

2. Đặc điểm của SQL Server và đối tượ ng làm việc ............................5 

2.1. Đặ c đ iể m ........................................................................................ 5 

2.2. Đố i t ượ ng làm việc của SQL Server .............................................. 5 

II. MÔ HÌNH CƠ SỞ DỮ LIỆU CLIENT-SERVER ........................................5 

1. Client-side ......................................................................................... 5 

2. Server-side ........................................................................................ 6 

III. CÁC KIỂU DỮ LIỆU CƠ BẢ N CỦA SQL...............................................6 

1. DB-Library Interface......................................................................... 7 

2. SQL OLE Interface ...........................................................................7 

3. ODBC - Open database connectivity................................................ 7 

3.1. ODBC là gì ? ................................................................................. 7 

3.2. Kiế n trúc của ODBC ...................................................................... 9 

3.3. Các thành phần cơ bản trong kiế n trúc của ODBC. ................... 10 

CHƯƠ NG II: SQL SERVER VỚ I HỆ ĐIỀU HÀNH MẠNG VÀ TÍNH BẢOMẬT TRUY XUẤT CSDL.....................................................................................13 

I. SQL SERVER CÓ 3 CHẾ ĐỘ BẢO MẬT..................................................13 

1. Standard .......................................................................................... 13 

2. Windows NT Integrated.................................................................. 13 

3. Mixed ..............................................................................................14 

II. SQL SERVER VỚI HỆ ĐIỀU HÀNH MẠ NG...........................................14 

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 3/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 2

1. Quản lý đĩ a ......................................................................................14 

2. Một extent là một nhóm gồm 8 trang này như sau.........................15  

2.1. Thiế t bị cơ sở d ữ liệu( database device) ...................................... 15 

2.2. Thiế t bị sao l ư u( Dump device).................................................... 16 

2.3. S ự chiế u đĩ a của hệ đ iề u hành ..................................................... 21 

2.4. S ự phân đ ôi hệ đ iề u hành............................................................. 21 

2.5. S ự phản chiế u log giao tác........................................................... 23 

2.6. Phản chiế u và l ư u d ự phòng ........................................................ 24 

2.7. Các phân đ oạn( Segment) ............................................................ 24 

2.8. Các kiể u hệ thố ng file .................................................................. 25 

CHƯƠ NG III: CÀI ĐẶT VÀ QUẢN TR Ị SQL SERVER.................................27 

I. TẠO VÀ QUẢ N LÝ CÁC USER ACCOUNT ............................................27 

1. Sử dụng GROUP để quản lý các user............................................. 28

2. Sử dụng GRANT và REVOKE để gán hay loại bỏ một quyền......29 

II. CHUYỂ N TỪ  MỘT DATABASE MICROSOFT ACCESS THÀNHDATABASE SQL SERVER............................................................................32 

III. GIỚI THIỆU CÁC TẬP LỆ NH CƠ BẢ N CỦA SQL ...............................33 

1. Lệnh SELECT................................................................................. 34 

2. Nhóm lệnh INSERT, UPDATE, DELETE:.................................... 37 

3. Nhóm lệnh CREATE, ALTER, DROP: ......................................... 38 

3.1. Lệnh CREATE .............................................................................. 38 

3.2. Lệnh ALTER ................................................................................. 40 

3.3. Lệnh DROP .................................................................................. 41 

4. Tậ p lệnh GRANT,REVOKE ..........................................................41 

IV. CÀI ĐẶT MÁY CHỦ SQL VÀ CÁCH SỬ DỤ NG TOOL QUẢ N TR Ị..42 

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 4/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 3

1. Hướ ng dẫn cài đặt máy chủ SQL Server trên môi tr ườ ng NT, Cấuhình SQL Client .................................................................................. 42 

2. Phần cài đặt SQL Server bao gồm các bướ c sau: .......................... 42 

V. CÁCH CÀI ĐẶT SQL CLIENT .................................................................49 

VI. GIỚI THIỆU MỘT SỐ CHỨ C NĂ NG QUẢ N TR Ị SQL SERVER ........55 

1.Tạo lậ p một Database mớ i ............................................................... 57 

2.Tạo lậ p User Database & Group Database...................................... 58 

3.Quản tr ị các database và quyền chia sẻ: .......................................... 59 

4.Các hiển thị biểu đồ Database.......................................................... 60 

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 5/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 4

CHƯƠNG I: GIỚI THIỆU CHUNG VỀ SQL SERVER

I. SQL SERVER LÀ GÌ?

SQL Server là viết tắt của Structure Query Language,nó là một công cụ 

quản lý dữ liệu đượ c sử dụng phổ biến ở nhiều l ĩ nh vực .Hầu hết các ngôn

ngữ bậc cao đều có trình hỗ tr ợ SQL như Visual BASic,Oracle,Visual C...

Các chươ ng trình ứng dụng và các công cụ quản tr ị CSDL cho phép

ngườ i sử dụng truy nhậ p tớ i CSDL mà không cần sử dụng tr ực tiế  p SQL.

 Nhưng những ứng dụng đó khi chạy phải sử dụng SQL.

1. 1. Lịch sử phát triển

SQL Server đượ c phát triển từ ngôn ngữ SEQUEL2 bở i IBM theo mô

hình Codd tại trung tâm nghiên cứu của IBM ở California ,vào những năm 70

cho hệ thống QTCSDL lớ n.

Đầu tiên SQL Server đượ c sử dụng trong các ngôn ngữ quản lý CSDLvà chạy trên các máy đơ n lẻ. Song do sự phát triển nhanh chóng của nhu cầu

xây dựng những CSDL lớ n theo mô hình khách chủ( trong mô hình này toàn

 bộ CSDL đượ c tậ p trung trên máy chủ (Server)). Mọi thao tác xử lý dữ liệu

đượ c thực hiện trên máy chủ bằng các lệnh SQL máy tr ạm chỉ dùng để cậ p

nhậ p hoặc lấy thông tin từ máy chủ). Ngày nay trong các ngôn ngữ lậ p trình

 bậc cao đều có sự tr ợ  giúp của SQL. Nhất là trong l ĩ nh vực phát triển của

Internet ngôn ngữ SQL càng đóng vai trò quan tr ọng hơ n. Nó đượ c sử dụngđể nhanh chóng tạo các trang Web động..

SQL đã đượ c viện tiêu chuẩn quốc gia Mỹ (ANSI)và tổ chức tiêu chuẩn

quốc tế (ISO) chấ p nhận như một ngôn ngữ chuẩn cho CSDL quan hệ .Nhưng

cho đến nay chuẩn này chưa đưa ra đủ 100%.Nên các SQL nhúng trong các

ngôn ngữ lậ p trình khác nhau đã đượ c bổ xung mở r ộng cho SQL chuẩn cho

 phù hợ  p vớ i các ứng dụng của mình.Do vậy có sự khác nhau rõ ràng giưã các

SQL.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 6/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 5

2. 2. Đặc điểm của SQL Server và đối tượ ng làm việc

2.1. Đặc đ i ể m

•  SQL là ngôn ngữ tựa tiếng Anh.

•  SQL là ngôn ngữ phi thủ tục, nó không yêu cầu ta cách thức truynhậ p CSDL như thế nào. Tất cả các thông báo của SQL đều r ất dễ sử dụng và ít khả năng mắc lỗi .

•  SQL cung cấ p tậ p lệnh phong phú cho các công việc hỏi đáp DL

+ Chèn, cậ p nhật, xoá các hàng trong một quan hệ 

+ Tạo, sửa đổi, thêm và xoá các đối tượ ng trong của CSDL.

+Điều khiển việc truy nhậ p tớ i cơ  sở dữ liệu và các đối tượ ngcủa CSDL để đảm bảo tính bảo mật của cơ sở DL

+đảm bảo tính nhất quán và sự ràng buộc của CSDL.

•  Yêu cầu duy nhất để sử dụng cho các hỏi đáp là phải nắm vững đượ ccác cấu trúc CSDL của mình.

2.2. Đố i t ượ ng làm vi ệ c của SQL Server 

Là các bảng ( tổng quát là các quan hệ )dữ liệu hai chiêù .Các bảng này bao gồm một hoặc nhiều cột và hàng.Các cột gọi là các tr ườ ng ,các hàng gọilà các bản ghi.Cột vớ i tên gọi và kiểu dữ liệu (kiểu dl của mỗi cột là duynhất)xác định tạo nên cấu trúc của bảng (Ta có thể dùng lệnh Desc[ribe]TABLE-name để xem cấu trúc của bảng ,phần tuỳ chọn[] có thể  đượ c bỏ trong Oracle).Khi bảng đã đượ c tổ chức hệ thống cho một mục đích nào đó cómột CSDL

II. MÔ HÌNH CƠ SỞ DỮ LIỆU CLIENT-SERVER 

SQL Server là hệ quản tr ị cơ  sở  dữ liệu theo mô hình client-server.Phân chia công việc giữa client và server như sau:

1. Client-side

•  Phải xác định thông tin cần server cung cấ p tr ướ c khi gở i yêu cầu

đến server.•  Có trách nhiệm hiển thị toàn bộ thông tin cho user.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 7/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 6

•  Phải làm việc vớ i các result set hơ n là làm việc tr ực tiế  p trên các bảng của database.

•  Phải làm mọi thao tác xử lý dữ liệu.

•  Cung cấ p tất cả định dạng của dữ liệu và thông tin cần thiết để tạoreport.

2. Server-side

•  Database engine đảm nhiệm việc lưu tr ữ (storage), cậ p nhật (update)và cung cấ p (retrieval) thông tin trong hệ thống.

•  Tạo result set theo yêu cầu của ứng dụng client.

•  Không có giao diện ngườ i dùng (user interface). Tự thân SQLServer là không có giao diện ngườ i dùng, ngoại tr ừ một số tool giúpadmin quản tr ị hệ thống.

•  Hoàn toàn độc lậ p vớ i các ứng dụng client.

•  Không chịu trách nhiệm việc hiển thị thông tin cho ngườ i dùng từ các k ết quả thực thi các query.

III. CÁC KIỂU DỮ LIỆU CƠ BẢN CỦA SQL

- Integer :Số nguyên:-2147483648 đến 2147483647

- Smallinteger :-32768 đến 32767

-  Number(n,p):số thậ  p phân độ dài tối đa là n k ể cả p chữ số thậ p phân(không tính dấu chấm).

- char (n):xâu có độ dàI cố định là n n<=255

- varchar(n):xâu có độ dàI biến đổi (0-:-n)

- long varchar  :xâu có độ dài không cố  định,độ dài có thể thay đổi4Kb-:-32Kb

- Date:Dữ liệu kiểu ngày.

IV. LÀM VIỆC VỚI SQL SERVER 

Client làm việc vớ i SQL Server thông qua 3 phươ ng thức sau:•  DB-Library

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 8/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 7

•  ODBC

•  SQL OLE

1. DB-Library Interface

DB-Library hoặc gọi tắt DB-LIB là một thư viện API cho cả hai C vàVB cho phép làm việc tr ực tiế p vớ i SQL Server. Thư viện API cung cấ p nhiềutool cần thiết giúp ta có thể gở i các query và nhận thông tin tr ả lờ i từ SQLServer, cũng như cho phép trích lọc dữ liệu từ các result set.

Để sử dụng DB-LIB cần include những file sau đây vào project:

C Visual Basic

SQLDB.H VBSQL.OCX

SQLFRONT.H VBSQL.BAS

2. SQL OLE Interface

SQL OLE interface là công cụ phát triển mớ i cho các nhà phát triểnứng dụng dựa trên SQL Server theo tiế p cận hướ ng đối tượ ng. SQL OLEinterface cho phép ta làm việc vớ i SQL Server thông qua sử dụng các object,method và collection của database làm việc.

Bằng cách include Type Library (TLB) vào trong môi tr ườ ng ứng dụng,ta có thể sử dụng các đối tượ ng OLE automation để làm việc vớ i SQL Server.TLB cho các ứng dụng Visual Basic là SQLOLE32.TLB.

3. ODBC - Open database connectivity

3.1.  ODBC là gì ?

ODBC (Open Database Connectivity) là một standard Database API. ở  đây cần phân biệt 2 khái niệm "standard API" và "native API": Standard APIlà một API chuẩn, điều đó có ngh ĩ a là nó đượ c sự chấ p thuận và hỗ tr ợ từ cácnhà cung cấ p DBMSs và các nhà phát triển ứng dụng. Còn các native API là

các API do từng nhà cung cấ p DBMS đưa ra để truy xuất và khai thác hiệu

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 9/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 8

quả các khả năng đặc tr ưng của DBMS do họ cung cấ p (ví dụ Oracle OCI,Sybase DB-Library là các native API).

Các bạn đã làm quen vớ i Windows API khi lậ p trình trong môi tr ườ ngWindows. Trong Visual Basic có thể bạn sẽ ít dùng tr ực tiế p các hàm, thủ tụcdo Windows API cung cấ p nhưng trong Visual C++ thì gần như liên tục sử dụng các hàm, thủ tục này để ứng dụng của bạn giao tiế p đượ c vớ i hệ điềuhành Windows và để tạo ra các giao diện của ngườ i sử dụng. Cho ví dụ, trongvấn đề hiển thị video để đưa ra một cửa sổ trên màn hình thì bạn không cần phải biết đến loại màn hình nào đang đượ c sử dụng, Windows API cung cấ pcho bạn khả năng hiển thị video độc lậ p vớ i các thiết bị. Cũng tươ ng tự như vậy, ODBC là một Database API chuẩn, nó cung cấ p cho các bạn khả năng

truy nhậ p đến các CSDL một cách độc lậ p vớ i các DBMS, qua ODBC các bạn có thể truy xuất đượ c tớ i các CSDL trên các DBMS khác nhau.

Các đặc điểm của ODBC:

•  ODBC là một giao di ệ n l ậ  p trình sử d ụng SQL: ODBC sẽ  sử d ụng 

các lệnh SQL để truy xuất các CSDL.

•  ODBC tách các nhà phát tri ể n ứ ng d ụng khỏi sự phứ c t ạ p của vi ệ ck ế t nố i  t ớ i một nguồn d ữ li ệ u: Mục tiêu chính đượ c đề cho ODBC là

nó phải dễ dàng cho ngườ i lậ p trình ứng dụng có thể tạo ra các k ết nốicủa ngườ i sử dụng cuối tớ i nguồn dữ liệu thích hợ   p mà không phải tr ở  thành một chuyên gia về mạng.

•   Ki ế n trúc của ODBC cho phép nhi ề u ứ ng d ụng truy xuấ t nhi ề unguồn d ữ  li ệ u.

Truy xuấ t nhiề u DBMS không có ODBC:

 

Application 1 Application 2 Application 3

API 3API 2API 1 API 3API 2API 1 API 3API 2API 1

DBMS 1 DBMS 2 DBMS 3

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 10/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 9

Truy xuấ t nhiề u DBMS vớ i ODBC:

Application 1 Application 2 Application 3

ODBC

DBMS 1 DBMS 2 DBMS 3

•  ODBC cung cấ  p một mô hình l ậ p trình "thích ứ ng" (adaptive): ODBC  cung cấ p các chức năng mà nó có thể đượ c sử dụng vớ i tất cả các DBMStrong khi vẫn cho phép một ứng dụng khai thác các khả năng riêng củamỗi DBMS. Nó cung cấ p các interrogation function mà một ứng dụng cóthể chủ động sử dụng để xác định các khả năng của một DBMS. Các

interrogation function cho phép một ứng dụng hỏi một driver về một vàichức năng đặc biệt có đượ c cung cấ  p trong một DBMS nào đó haykhông.

3.2.   Ki ế n trúc của ODBC 

ODBC ĐƯỢC XÂY DỰ  NG TRÊN MÔ HÌNH KIẾ N TRÚC LIENT/SERVER.

Trong kiến trúc Client/Server bao gồm một một client, một server, và

một data protocol mà nó cho phép client và server giao tiế p vớ i nhau. Môhình này r ất lý tưở ng cho một Traditional Relational DBMS, trong đó mộtmạng vật lý k ết nối client PC tớ i DBMS ở  trên một máy khác. ODBC đượ cthiết k ế  để sử dụng vớ i các hệ thống nằm trong mô hình kiến trúcclient/server, đáp ứng đượ c các yêu cầu cần thiết cho các TraditionalRelational DBMS như:

•  Cung cấ p một standard API.

•  Khai thác tất cả các chức năng của bất cứ một DBMS nào.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 11/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 10

•  Cung cấ p một sự thực thi tươ ng đươ ng vớ i native API của bất cứ mộtDBMS nào.

Kiến trúc của ODBC đặt trên nền tảng mô hình kiến trúc client/server và sự đảm nhận cho bất cứ một giao diện lậ p trình nào cũng có thể phát vàthu trên giao thức truyền dữ liệu của bất cứ một SQL DBMS, sẽ hoạt động vàthực thi như native API cho DBMS đó.

ODBC không chỉ giớ i hạn vớ i các client/server DBMS, nó cũng làmviệc vớ i các desktop database và các file-oriented store như bảng tính và text.

3.3.  Các thành phần cơ bản trong ki ế n trúc của ODBC  .

Application

ODBC Driver Manager 

 Network/Communications Software

DBMS

User Interface

Data Storage

ODBC Drivers

Data Storage

Application

ODBC Driver Manager 

User Interface

ODBC Drivers

 

Server 

Data

Data Source

Client

CLIENT/SERVER DBMSFILE - ORIENTED DATA STORE

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 12/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 11

Applications: Các ứng dụng đảm nhận việc tươ ng tác vớ i ngườ i sử dụng qua user interface và gọi các ODBC function để đưa ra các câu lệnhSQL và nhận các k ết quả tr ả về.

Driver Manager: Như tên gọi của nó, nhiệm vụ của nó là quản lý sự tươ ng tác giữa các chươ ng trình ứng dụng và các driver, nhiều ứng dụng vànhiều driver có thể đượ c quản lý cùng một lúc. Driver Manager cung cấ p sự liên k ết giữa các ứng dụng và các driver, cho phép nhiều ứng dụng truy xuấtdữ liệu qua nhiều driver. Driver Manager load hay unload một hoặc nhiềudriver cho một hoặc nhiều ứng dụng. Khi một ứng dụng cần truy xuất mộtnguồn dữ liệu, Driver Manager sẽ load đúng driver cần thiết. Driver Manager xác định các ODBC function đượ c cung cấ p bở i driver đó và ghi các địa chỉ 

trong bộ nhớ  của chúng vào một bảng. Khi một ứng dụng gọi một functiontrong một driver, Driver Manager sẽ xác định vào gọi function đó. Bằng cáchnày, nhiều driver có thể đượ c quản lý đồng thờ i và ngườ i lậ p trình ứng dụngkhông phải lo lắng đến việc quản lý chi tiết các từng driver. Một ứng dụng cóthể sử dụng ODBC tại cùng một thờ i điểm vớ i một ứng dụng khác mà khôngcần phải biết đến ứng dụng này.

Drivers: Các driver xử lý các ODBC function đượ c gọi, đưa ra các yêucầu SQL để chỉ định các nguồn dữ liệu, và tr ả về k ết quả cho các ứng dụng.Các driver cũng đảm nhận việc tươ ng tác vớ i bất cứ các lớ  p phần mềm nàocần thiết để truy xuất nguồn dữ liệu.

Data sources: Bao gồm các tậ p hợ  p dữ liệu và các môi tr ườ ng tươ ngứng của chúng, bao gồm các hệ  điều hành, các DBMS, và các phần mềmmạng.

- Open Database Connectivity (ODBC) vớ i SQL Server 

ODBC là một giao diện lậ  p trình (programming interface) cho phépứng dụng có thể truy xuất data từ các hệ quản tr ị cơ sở dữ liệu sử dụng SQL(Structured Query Language) như là phươ ng thức chuẩn để truy xuất data.

ODBC có thể xem như là một lớ  p tr ừu tượ ng giữa ứng dụng và hệ quảntr ị cơ  sở  dữ liệu. ODBC chịu trách nhiệm nhận yêu cầu từ  ứng dụng vàchuyển đổi nó sang ngôn ngữ (SQL) mà database engine có thể hiểu đượ c vàdùng nó để lấy thông tin từ database. Làm việc vớ i ODBC ta chỉ cần viết các phát biểu SQL chuẩn và sau đó chuyển các phát biểu đó đến ODBC, toàn bộ công việc hậu tr ườ ng, làm thế nào để lấy đượ c thông tin từ database doODBC đảm nhiệm.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 13/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 12

Mỗi loại database engin có một ODBC driver tươ ng ứng. Database k ếthợ  p vớ i ODBC driver tươ ng ứng cho nó đượ c gọi là Data Source Name(DSN). ứng dụng muốn làm việc vớ i ODBC tr ướ c hết phải mở  mộtconnection đến ODBC, trong đó cần khai báo DSN, UserID và Password.

Web server là client của SQL Server cho dù cùng chạy trên một hệ thống. Các ứng dụng Web đều truy xuất database thông qua ODBC, ADO làmột ví dụ, các sản phẩm front-end như Borland’s Delphi, Microsoft VisualBasic đều dùng ODBC để truy xuất SQL Server. ODBC thực sự đã tr ở thànhmột chuẩn trong việc truy xuất database.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 14/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 13

CHƯƠNG II: SQL SERVER VỚI HỆ ĐIỀU HÀNH

MẠNG VÀ TÍNH BẢO MẬT TRUY XUẤT CSDL

Khi xây dựng các ứng dụng Web-database, cần chú ý đến việc bảo mật,có 3 mức bảo mật tại 3 nơ i gồm:

- Web Server (do IIS đảm nhiệm)

- Hệ điều hành (ở  đây là Windows NT Server đảm nhiệm)

- Truy xuất dữ liệu (do SQL Server đảm nhiệm)

Mức thứ nhất: bảo mật trên Web server đượ c k ể đến là dịch vụ SSL(Secure Socket Layer) cung cấ p cơ chế mã hóa dữ liệu truyền giữa server vàclient.

Mức thứ hai: Windows NT Server kiểm tra account và ngăn cấm cáclogin không hợ  p lệ vào các domain không đượ c phép.

Mức thứ ba: là mức truy xuất dữ liệu trên các object của database.

I. SQL SERVER CÓ 3 CHẾ ĐỘ BẢO MẬT

1.  Standard

Là default mode, ở chế độ này SQL Server đảm trách toàn bộ việc quảnlý các account của nó, SQL server xác nhận một user và kiểm tra

 password/login trên tất cả connection đến SQL Server.

2.  Windows NT Integrated

Chế độ này sử dụng cơ chế kiểm tra của Windows NT server cho tất cả connection. Khi SQL Server chạy ở chế độ này, Windows NT sẽ quản lý tấtcả user k ết nối vào thông qua ACL (Acces Control List) của nó. Tiện ích củachế độ bảo mật này là cho phép user sử dụng một password duy nhất để truyxuất tớ i tài nguyên trong domain và thờ i hạn cũng như việc mã hóa passwordqua mạng. Như vậy, user không cần login lần thứ 2 khi truy xuất SQL Server.

Một user login vào Windows NT server hoặc đượ c gán connection hoặc bị từ chối k ế nối đến SQL server dựa trên thuộc tính của account trên NT server.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 15/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 14

Việc gán các quyền truy cậ p vào SQL server cho một login vào NT server tạora một login đượ c ủy quyền, connection thông qua login đượ c ủy quyền gọi làk ết nối đượ c ủy thác (trusted connection). Khi một user thiết lậ p đượ c mộtconnection ủy thác đến SQL server, user có thể:

1- Đượ c gắn vớ i một login của SQL server hiện hành trên server nếu tênlogin đượ c so trùng vớ i account của user.

2-  K ết nối vớ i login mặc định (thườ ng là guest)

3-  K ết nối vớ i login SA nếu user là Adminitrator trên NT server.

Hầu hết các thao tác gán quyền cho mỗi user như quyền truy xuất vàocác bảng, view, hay các object khác của database đều đượ c quản lý bằng SQL

server giống như trong chế độ Standard.

3.  Mixed

K ết hợ  p cả hai chế độ Standard và Integrated. Khi một user k ết nối đếnSQL Server trong chế độ mixed, tr ướ c tiên NT sẽ kiểm tra xem login name đãcó thiết lậ p một k ết nối ủy thác nào hay không. Nếu không tìm thấy k ết nối ủythác nào thì sau đó SQL Server sẽ kiểm tra login name và password. Nếu

cũng không nhận biết login đượ c yêu cầu trên server, truy cậ p bị từ chối.

II. SQL SERVER VỚ I HỆ ĐIỀU HÀNH MẠNG

1. Quản lý đĩ a

Việc cấu hình và sử dụng đúng đĩ a là yếu tố quan tr ọng để chạy tốt hệ thống SQL Server. Chươ ng này khai thác các chủ đIểm liên quan đến các chủ 

đề quan tr ọng này. Bắt đầu là phần thảo luận và phẩn giảI thích một số thuậtngữ thông dụng liên quan đến việc lưu tr ữ đĩ a. Vớ i các thuật ngữ quen thuộcnày, chúng ta sẽ tậ p trung vào một số các tuỳ chọn lưu tr ữ đĩ a khác nhau, baogồm các thiết bị RAID, k ẻ sọc đĩ a , phản chiếu phân đoạn và chọn kiểu hệ thống file.

Chúng ta cũng sẽ xem xét cách sử dụng diện tích DBCC để tăng thêmkiến thức về môi tr ườ ng đĩ a.Tiế p theo chúng ta sẽ tiế p tục vớ i các hệ số điềnchỉ mục và sự phân đoạn. Sau các chủ đề này là một loạt các chủ đIểm khác

về nhậ p xuất bao gồm nhậ p xuất không đồng bộ, tiến trình lazywrite của SQLServer và read- ahead(đọc tr ướ c)SQL Server cung cấ  p cho ngườ i quản

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 16/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 15

lýnhiều số liệu thống kê và tham số cấu hình để báo cáo về điều khiển việcnhậ p xuất. Chúng ta sẽ k ết thúc chươ ng này bằng một số giảng giảI về nhữngthuận lợ i và bất lợ i của việc lưu tr ữ tempdb trong RAM.

Các khái niêm l ư u tr ữ  đĩ a

Tr ướ c hết bắt đầu thảo luận về các thảo luận về cách cài đặt và bảoquản đĩ a SQL Server một cách hữu hiệu nhất chúng ta sẽ định ngh ĩ a một số kháI niệm và thuật ngữ  đĩ a quan tr ọng

Trang (page)

Trang là đơ n vị đo nhỏ nhất đối vớ i việc lưu tr ữ đĩ a SQL Server cáctrang có kích cỡ 2k và có thể chữa dữ liệu hay chỉ mục .Bạn không thể thay

đổi kích cỡ file.Khi SQLServer đọc hay ghi dữ liệu nó thườ ng thực hiện cáctác vụ nàỷ mức đọ trang .

Khi bạn tạo cơ sở dữ liệu lần đầu.SQL Server khở i tạo tất cả các bittrên tất cả các trang trên thiết bị là 0. Tuy nhiên có hai loai lệ sau

1. Nếu bạn đã xác lậ p tuỳ chọn “ creat for load ’’khi bạn chon phươ ngán này SQL Server lướ t qua phần khở i tạo đĩ a của thao tác tạo cơ  sở dữ liệu.

2. Nếu thiết bị đã có thông tin. Nếu SQL Server tìm thấy có dữ liệu cũ 

trên thiết bị này, nó bỏ qua giai đoạn xóa. Ngoại vùng( Extent)

2. Một extent là một nhóm gồm 8 trang này như sau

Bộ vi phân cấ p

Một bộ phân cấ p bằng 12 extent, vớ i tổng số trang là 256. Trang đầutiên trong phân cấ p đượ c gọi là trang phân cấ p đây là một biểu diễn về sự cânđối của boọ phân cấ p, 255 trang dành cho dữ liệu và chỉ mục

Thiết bị ( Delive)

Một số thiết bị là một file hệ điều hành Windows NT hay là một ổ  băng từ .SQL Server sử dụng hai loại thiết bị cơ sở dữ liệu và các thiết bị saolưu.

2.1. Thi ế t b ị cơ sở d ữ li ệ u( database device)

Một hệ thống cơ  sở dữ liệu là một vùng đĩ a do ngườ i quản lý SQLServer ấn định. Nó có thể hỗ tr ợ một phần hay toàn bộ cơ sở dữ liệu. Bạn có

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 17/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 16

thể tìm hiểu về các thiết bị hiện có của bạn bằng cách sử dụng SQL EnterpriseManager hay bằng cách chạy thủ tục có sẵn “ sp_helpdevice”

Kích cỡ tối thiểu của một thiết bị cơ sở dữ liệu là một megabyte

2.2. Thi ế t b ị sao l ư u( Dump device)

Một thiết bị sao lưu là một nơ i trên đĩ a, đĩ a mềm hay bằng từ mà SQLServer sử dụng để lưu dữ phòng dữ liệu hay ghi toàn tác. Có hai yếu tố quantr ọng của việc quản lý hệ thống. Bạn có thể tạo các thiết bị sao lưu bằng cáchsử dụng màn hình Creat Dump Device trong SQL Enterprise Manager hay bằng cách chạy thủ tục có sẵn

Thiết bị sao lư u ( Dump device)

Một thiết bị sao lưu là một nơ i trên đĩ a, đĩ a mềm hay bằng từ mà SQLServer sử dụng để lưu dự phòng dữ liệu hay ghi toán tác . Có hai yếu tố quantr ọng của việc quản lý hệ thống . Bạn có thể tạo các thiết bị sao lưu bằngcách sử dụng màn hình Create Dump Device trong SQL Enterprise Manager:

Trong thiết bị dướ i đây chúng ta tạo một thiết bị băng từ cần sử dụngđể saop lưu dữ toàn tác bạn có thể lấy một danh sách gồm các thiết bị saolưu có sẵn bă ngf cách sử dụng màn hình SQL Enterpise Manage Server 

Manage. Bạn cũng có thể nhận biết những nội dung nào đã đượ c gửi đến thiết bị sao lưu này bằng cách nhậ p vào dấu “+” của thiết bị 

Trong tr ườ ng hợ  p này chúng ta đã sao lưu các cơ sở dữ liệu” master “và “ megasyne” vào thiết bị “log_dump_device”đã sao lưu logtoàn tác “megasyne” vào thiết bị log _dump_ device” .

 Nếu bạn thích sử dụng các thủ tục có sẵn để quản lý thiết bị sao lưu bạn có thể sử dụng thủ tục “ sp_ adddump_ device “ để tạo thiết bị mớ i “

sp_dropdevice” để xoá nó và “ sp_ helpdevice” để truy tìm các thiết bị saolưu hiện có .

Các thiết bị mặc định

Khi bạn tạo một thiết bị cơ sở dữ liệu, bạn có thể bổ sung nó vào vùngchứa các thiết bị có sẵn mà SQL Server có thể sử dụng cho các cơ sở dữ liệusau này. Các tbiết bị này đượ c coi như là mặc định . SQL Server chọn từ danhsách này theo thứ tự abc , tiế p tục di chuyển khi mỗi thiết bị đầy . Bạn có thể 

chỉ định một thiết bị cần bổ sung vào vùng chứa các thiết bị cần bổ sung vàovùng chứa các thiết bị mặc định bằng cách đánh dấu kiểm vào việc Default

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 18/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 17

Device khi bạn tạo thiết bị. Chẳng hạn trong tr ườ ng hợ  p sau, chúng ta đã yêucầu SQL Server bổ sung “ dbdevice5” vào danh sách các thiết bị mặc định:

Để xoá bỏ một thiết bị ra khỏi danh sách mặc định, bạn chỉ cần xoáchọn hộ p kiểm định Default Device một cách để thay đôỉ mối quan hệ củamột thiết bị vớ i danh sách thiết bị mặc định là sử dụng thủ tục có sẵn“sp_diskdefault”

Thiết bị null( Null device)

SQL Server cung cấ p một thiết bị sao lưu mà bạn có thể sử dụng để saolưu nhanh chóng các cơ sở dữ liệu thiết bị này đượ c gọi là thiết bị null có tênlogic là DISKDUMP r ất nhanh nhưng nó cũng có ngh ĩ a r ằng bạn sẽ không thể  phục hồi lạI từ thiết bị sau này

Cơ sở dữ liệu

Một cơ  sở  dữ liệu là một nhóm gồm các bảng biểuvà đối tượ ng dongườ i quản lý SQL Server ấn định. Các cơ sở dữ liệu có thể nằm hoàn toàntrên một thiết bị cơ sở dữ liệu, hoặc chúng có thể tr ảI r ộng ra nhiều thiết bị cơ  sở dữ liệu.

Trang trên cơ sở dữ liệu”payroll” nằm trên cả hai thiết bị “ device1 và

device2” Ngượ c lạI cả hai cơ  sở dữ liệu “ logicstics”và “accounts payable”đều chỉ nằm gọn trên một thiết bị.

Tên vật lý.

Tên vật lý cho biết tên thực của file hệ điều hành windows NTtên vật lýchứa toàn bộ đườ ng dẫn . Một số tên vật lý mẫu như sau

C:\DATA\ DBSPACE1. BAT

E:\DEVICE\ SQSERVER\MAINFILE. DAT

D:\DATABASEFILE1. DATA

Tên logic

Đây là những tên đầy đủ có ý ngh ĩ a mà ngườ i quản lý hệ điều hànhSQL Server gán cho thiết bị vật lý.Sau đây là một số tên logic mẫu

PAYROLL_ DATABASE

TRANSACTION_1

SUPPORT_INFORMATION

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 19/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 18

Các tu ỳ chọn l ư u tr ữ   đĩ a

RAID

RAID Là từ viết tắt của Redundant array of Inexpensive Disk. Đây là

một kháI niệm phổ biến vớ i một hệ điều hành quyền năng gồm Window NTvà UNIX. Khi bạn đề cậ p đến RAID, bạn phải nhận biết các tuỳ chọn hay cáccấ p độ khác nhau của RAID.Sau đây là sáu cấ p độ của RAID.

Cấ p độ 0: Đây là cấ p độ thấ p nhất của tính năng RAID. Khi hệ thốngRAID ở cầ p độ 0, nó có ngh ĩ a là dữ liệu của bạn đượ c phân chia trong số tấtcả các đĩ a trong mảng. Điều này cải tiến đượ c sự thực thi thao tác đọc ghihiện đang đượ c nhiều ổ đĩ a phục vụ hơ n.Sự cân đối về tảI tr ọng giúp loại bỏ các tr ở ngại về sự đáp ứng. Ngườ i quản lý có thể quen thuộcvớ i một cái tênkhác đối vớ i loại công nghệ RAID này:sự k ẻ sọc đĩ a. Một bất lợ i của phươ ng pháp này là việc đánh mất một ổ đĩ a có thể dẫn đến sự thất thoát lớ n về dữ liệu, vì cấ p độ này của RAID không có k ỹ thuật bỏ qua lỗi .

Cấ p độ 1: Cấ p độ này cung cấ p sự phản chiếu đĩ a cài sẵn, bất k ỳ khinào SQL Server vào đĩ a sơ cấ p thì nó cũng ghi vào đĩ a thứ cấ p. Điều này dữ đồng bộ cho cả hai ổ đĩ a. Theo quan điểm thực thi, các thao tác ghi có thể xuống cấ p từ từ, vì hệ thống bây giờ phảI thực hiện cả hai thao tác ghi, chứ 

không phải mộ. Tuy nhiên thao tác đọc có thể cải tiến đượ c vì hệ thống bâygiờ có hai nơ i để tìm kiếm thông tin và do đó giảm bớ t khả năng ấn đĩ a. Nêucác trình ứng dụng tiêu biểu mất nhiều thờ i gian để đọc dữ liệu hơ n thì sự xuống cấ p của thao tác ghi đượ c bù lại bở i sự cải tiến của thao tác đọc

Cấ p độ 2: Cấ p độ này giớ i thiệu logic chỉnh sửa lỗi cơ  bản.Dữ liệuđượ c phân chia trong số các ổ đĩ a và mã chỉnh sửa lỗi đượ c bổ sung mã chỉnhsửa lỗi yêu cầu bạn gắn dữ liệu cho nhiều đĩ a điều này làm giảm bớ t khả 

năng thất thoát dữ liệu, nhưng sự thực thi của cấ p độ này không tốt bằng cấ pđộ khác .

Cấ p độ 3: RAID 3 là một cấ p độ nâng cao của cấ p độ 2 nó yêu cầu chỉ một đĩ a cho mà chỉnh sửa lỗi

Cấ p độ 4: Cấ p độ này chia dữ liệu ra làm nhiều khối hơ n tr ướ c khi tr ảIr ộng nó ra ổ đĩ a. Mã chỉnh sửa lỗi cẫn trên chỉ một ổ đĩ a tuy nhiên các phépthử cho thấycấ p độ này cho k ết quả không thoả 

Cấ p độ 5: Cấ p độ này tươ ng tự cấ p độ không, vớ i một thuận lợ i bổ sunglà chỉnh sửa lỗi tinh vi hơ n.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 20/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 19

Sự thự c thi RAID

Bất k ể bạn chọn cấ p độ nào của RAID bạn quyết định nên thực thichiến thuật này qua phần cứng hay hệ điều hành, sau này là những thuận lợ i

và bất lợ i của mỗi phươ ng pháp .RAID dự a trên phần cứ ng

Khi bạ chọn RAID dựa trên phần cứng, bộ điều khiển bộ đĩ a quản lýcác thao tác RAID thực sự. Các bộ điều khiển RAID này tr ị giá hơ n các bộ điều khiển ổ đĩ a chuẩn. Tuy nhiên, chi phí thêm này không đáng k ể so vớ inhững thuận lợ i thu đượ c về sự thực thi, vì bộ điều khiển này xử lý các tiếntrình RAM bổ sung bên trong phần cứng, thay vì tỉêu thụ lượ ng thờ i gian quý

  bàu của CPU trong hệ thống điều chỉnh. Điều này có ngh ĩ a hệ  điều hànhkhông hoàn toàn nhận biết đượ c công việc bổ sung do bộ điều khiển đĩ a thựchiện

RAID dự a trên hệ điều hành

Khi bạn gắn tác vụ quản lý RAIDcho Window NT, hệ điều hành chịutrách nhiệm bảo quản tính tươ ng đươ ng và độ tin cậy.Mặc dù điều này có thể đem lạI cho CPU một gánh nặn, nhưng nó giảm bớ t số chi phí cho các bộ điều

khiển đĩ a RAID nâng cao mà phươ ng pháp phần cứng yêu cầu.Tuy nhiên, nếumục đích của bạn là nâng cao toàn bộ năng suất thì các chi phí thêm về cứngthườ ng không quan tr ọng bằng khả năng trì tuệ khi bạn buộc hệ điều hành vàCPU thực hiện bảo quản RAID.

Sự k ẻ sọc đĩ a của hệ điều hành .

 Ngườ i quản lý có thể sử dụngk ẻ sọc của Window NT để nâng cao sự nhậ p xuất khi bạn cài đặt disk striping bạn đang yêu cầu hệ điều hành tr ải dữ liệu ra làm nhiều đĩ a, mà đến lượ t nó có thể loại bỏ các tr ở ngại tiềm năng

Gỉa sử bạn có ổ đĩ a C,D,E và F để nâng cao tốc độ nhậ p xuất bạn đãyêu cầu Window NTk ẻ sọc qua các ổ đĩ a này, biều đồ sau đây trình bày cánhhệ điều hành ghi các file vào các bộ sọc

Bạn có thể áp dụng biều đồ này ngay cả khi bạn đã chọn RAID disk striping dựa trên phần cứng thay vì Window NT striping dựa vào phần mềmstriping của hệ điều hành thực thi RAID cấ p độ 0

Striping dẫn đến k ết quả tốt hơ n như thế nào ? lý do của việc đạt đượ ck ết quả tốt hơ n này phát sinh từ việc I/O( nhậ p , xuất) phụ thuộc vào sự truy

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 21/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 20

cậ p bộ nhớ chậm hơ n đến 10 lần. Do đó bất k ỳ điều gì bạn có thể thực hiệnđượ c để làm giảm số lần nhậ p xuất đều có khả năng đóng góp tr ực tiế p làmtăng tốc độ hệ thống. Nếu nhậ p xuất chậm thì các tr ở ngạI về nhậ p xuất thậmchí còn tệ hơ n. Hãy tưở ng tượ ng bạn có một chươ ng trình tảI dữ liệu chuyển

nhậ p xuất, chươ ng trình này liên tục chờ hệ điều hành hoàn tất các thao tácghi của nó vào một ổ đĩ a đơ n. Điều gì xảy ra nếu bạn đã thực thi striping? Bạncó thể nhận thấy một sự cảI tiến ngay tức khắc vì hệ điều hành bây giờ có thể ấn hành nhiều yêu cầu ghi hơ n vào cùng một thờ i đIểm, các thao tác đọc cũngsẽ tốt hơ n, vì có khả năng các yêu cầu đọc khác nhau sẽ do các ổ đĩ a khácnhau phục vụ.

Sự tăng thêm về tính thực thi của Disk striping thậm chí còn gây ấn

tượ ng hơ n trong một môI tr ườ ng đa dòng, sự xử lý như Windows NT, trongđó có các dòng có thể phục vụ các ổ đĩ a riêng.ảnh thu đượ c có thể tr ở nênsáng hơ n nếu bạn đang sử dụng nhiều thiết bị  điều khiển đĩ a hay nhiềuCPU.Việc bổ sung bộ điều khiển hay các CPU làm tăng thêm chức năng xử lý đối vớ i các tác vụ tiêu hoá tốn thờ i gian của đĩ a nhậ p xuất.

 Ngoài sự gia tăng của tính thực thi disk striping còn có nhiều thuận lơ Ikhác. Việc sử dụng tính tươ ng đươ ng của disk striping có thể giúp bạn bảođảm an toàn cho dữ liệu của bạn. Sau đây chúng ta sẽ tìm hiểu thêm các tínhtươ ng đươ ng này và vai trò của nó trong môI tr ườ ng của bạn .

Tính tươ ng đươ ng và không tươ ng đươ ng

Khi bạn cài đặt Windows NT disk striping bạn có thể chọn tính tươ ngđươ ng hay không tươ ng đươ ng, việc chọn tính tươ ng đươ ng có ngh ĩ a là hệ điều hành sử dụng một ổ đĩ a để chứa các chi tiết dữ liệu thừa. Nhở sử dụng biểu đồ tr ướ c , lưu ý có một sự thay đổi nhỏ xảy ra khi bạn chọn tính tươ ngđươ ng :

Bây giờ có một k ẻ sọc nhỏ về dữ liệu tươ ng đươ ng như là thành phầncủa một vạch ngăn.Nếu một trong các đĩ a này bị hư hỏng tr ầm tr ọng, bạn cóthể táI tạo thông tin như thể bạn đã thực thi phản chiếu đĩ a.Sự k ẻ sọc của hệ điều hành vớ i tỷ suất tươ ng đươ ng sẽ ngang bằng vớ i RAID cấ p độ 5, tuynhiên toàn bộ vùng không gian cần thiết để thực thi hiện tượ ng thì thấ p hơ nnhiều so vớ i sự phản chiếu.Sự phản chiếu đòi hỏi bạn phảI đặt tr ướ c mộtlượ ng không gian bằng vớ i vùng lưu tr ữ gốc, trong khi đó striping tươ ng

đươ ng chỉ cần thêm một ít chi phí.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 22/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 21

Lưu ý r ăng disk striping tươ ng đươ ng chỉ có thể hữu hiệu khi bạn đangsử lý các ổ đĩ a riêng lẻ, nếu bạn đã tạo bốn ổ đĩ a logic từ một ổ đĩ a vật lý, bạnsẽ không đạt đượ c những lợ i ích hợ  p nhất dữ liệu của disk striping, vì mọi dữ liệu đều nằm cùng trên ổ đĩ a đơ n.

Sự phản chiếu

Một trong những trách nhiệm quan tr ọng nhất của ngườ i quản lý là bảovệ dữ liệu. Phần này khai thác cách sử dụng phản chiếu để tăng khả năng“cứu vớ t” dữ liệu khi hệ thông bị hỏng tr ầm tr ọng. Bạn có thể chọn yêu cầuhệ điều hành phản chiếu dữ liệu hay yêu cầu chính hệ thống SQL Server phảnchiếu thông tin.K ết thúc phần này là sự giảng giảI vai trò của việc sao lưu dự  phòng dữ liệu trong môI tr ườ ng phản chiếu .

2.3.  S ự chi ế u đĩ a của hệ  đ i ề u hành

Là một trong nhiều đặc tính của hệ điều hành Windows NT, đặc tinh phản chiếu đĩ a hoặc mối quan tâm đặc biệt của những ngườ i quản lý cơ sở dữ liệu SQL Server.Bạn có thể nhở ngườ i quản lý đĩ a của hệ điều hành tạo một bộ phản chiếu, việc tạo một bộ phản chiếu có ngh ĩ a r ằng một khi bạn ghi vàođĩ a chính , Windows NT cũng ghi vào đĩ a phản chiếu bị hỏng nặng, hệ điềuhành có thể tiế p tục làm việc bằng cách dựa vào ổ đĩ a còn lạI. Sau đây là một

số nguyên gây ra hư hỏng đĩ a

•  Do vỡ  đầu đĩ a

•  Do sự sửa đổi dữ liệu chính

•  Do hỏng động cơ  đĩ a

•  Do hỏng card điều khiển đĩ a

Sự phản chiếu làm tăng thêm chi phí bề mặt trong suốt các thao tác ghi

dữ liệu, vì hệ điều hành phải ghi các tác vụ này hai lần.Tuy nhiên đối vớ i cácthao tác đọc, sự phản chiếu có thể làm tăng thêm tính thực thi, Vì Windows NT có hai nguồn thông tin có giá tr ị ngang nhau: đĩ a cơ sở và đĩ a phản chiếu.Hệ điều hành có thể chọn giữa hai loại đĩ a này .

2.4.  S ự phân đ ôi hệ  đ i ề u hành

Sự nhân đôi là sự phản chiếu hệ điều hành đượ c thực hiện thêm một bướ c nữa, khi sự nhân đôi là một phần của chiến thuật phản chiếu hãy sử dụng các bộ điều khiển đĩ a riêng cho đĩ a cơ bản và đĩ a phản chiếu. Điều này

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 23/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 22

làm tăng thêm tính bảo đảm về hệ thống, vì bạn đã loại bỏ đượ c một sự cố hỏng hóc phổ biến.

Sự phản chiếu thiết bi SQL Server

Khi bạn tạo một thiết bị, bạn có thể chỉ dẫn SQL Server phản chiếuthiết bị.Chẳng hạn, trong hình minh hoạ dướ i đây, chúng ta đã tạo một thiết bị có tên images đã chọn nút “ Mirror”.

 Nếu bạn muốn sử dụng Transact_SQL, bạn có thể tuỳ ý sử dụng cáclệnh sau:

DISK MIRROR 

DISK UNMIRROR 

DISK REMIRROR 

Khi bạn sử dụng SQL Server để phản chiếu một thiết bị, hệ thống cơ sở  dữ liệu ghi tất cả những thay đôỉ vào cơ sở dữ liệu hai lần: một vào thiết bị cơ   bản và một vào thiết bị phản chiếu. Điều này ảnh hưở ng đến việc làm chậmthao tác ghi nhưng không đáng k ể.

Lưu ý r ằng sự phản chiếu này không có ngh ĩ a khi bạn đang làm việcvớ i các ổ đĩ a nhỏ hơ n sự phản chiếu sẽ không đem lạI một lợ i ích nào về sự 

hợ  p nhất dữ liệu: mọi dữ liệu vẫn còn nằm trong một ổ cho dù bạn đã too ra bao nhiêu ngăn.

Chọn giữa sự phản chiếu hệ điều hành và sự phản chiếu SQL Server 

Sau đây là một số tiêu chuẩn cần xem xét để áp dụng cho môI tr ườ ngcủa bạn

1.Windows NT advanced server và Windows NT Workstation.

 Nếu bạn đang chạy phiên bản Windows NT advanced server Worktion, bạn không có một sự lựa chọn nào ngoàI việc thực thi sự phản chiếu SQLServer . Đây là điều cần thiết bờ i vì phiên bản này không hỗ tr ợ sự phản chiếuhệ điều hành.

2. Dễ dàng tiế p cận vớ i ngườ i sử dụng Windows NT

 Nếu bạn làm việc trong một môI tr ườ ng mà trong đó bạn dễ dàng tiế pcận vớ i ngườ i quản lý hệ điều hành( hoặc nếu bạn là ngườ i quản lý cả hệ 

thống lẫn cơ sở dữ liệu), thì việc cài đặt và bảo quản phần chiếu hệ điều hànhlà đơ n giản. Mặt khác, nếu ngườ i quản lý Windows NT không phảI là ngườ idễ tiế p cận, tốt hơ n bạn nên sử dụng sự phản chiếu riêng của bạn ( ngh ĩ a là sự 

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 24/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 23

 phản chiếu của SQL Server) , vì bạn không cần sự hỗ tr ợ của ngườ i quản lýhệ thống sau khi đã cố định vị trí các ổ đĩ a vật lý 

Có sẵn phần cứng RAID. Nếu các ổ đĩ a của bạn có hợ  p nhất công nghệ RAID, việc sử dụng các tính năng phản chiếu hệ điều hành sẽ tốt hơ n là sử dụng cấu trúc phản chiếu SQL Server. RAID có tốc độ thực thi nhanh hơ n,hữu hiệu hơ n, và chiếm lưu lượ ng đĩ a hơ n sự phản chiếu cơ sở dữ liệu thuầnkhiết.

Chọn dữ liệu cần phản chiếu

Bạn đã nghiên cứu các tuỳ chọn phản chiếu khác nhau dành cho ngườ iquản lý SQL Server , bây giờ chúng ta sẽ xác định những thông tin nào cần phản chiếu, thông thườ ng, vớ i giá đĩ a quá thấ p, đừng phản chiếu mọi dữ liệucủa hệ thống. Bằng cách này, khả năng làm mất thông tin sẽ giảm xuống. Hơ nnữa, sự phản chiếu cho phép bạn tiế p tục làm việc trong tr ườ ng hợ  p bạn đãyêu cầu tạm ngừng tr ướ c đó. Hãy so sánh chi phí tối thiểu của các ổ đĩ a bổ sung vớ i lượ ng thơ ì gian cần tải.

 Nếu bạn không có đủ lưu lượ ng đĩ a phản chiếu mọi thứ và bạn đangchạy một hệ thống mà vớ i hệ thống đó, bạn không thể cung ứng đủ các giaotác bị mất, bạn nên chiếu log giao tác.

2.5.  S ự phản chi ế u log giao tác

Log giao tác chứa các thông tin quan tr ọng về những dữ liệu đã đượ cthay đổi trong cơ sở dữ liệu. Khi bạn khở i động lạI hệ thống SQL Server saukhi bị tắc ngẽn, nó sẽ xem xét các nội dung của log để xác định những thayđổi nào vẫn còn đang đượ c đánh dấu lâu dàI và những thay đổi nào còn đangđượ c xử lý khi hệ thống tạm ngừng hoạt động. Nhờ cơ sở dữ liệu theo tr ạngtháI của nó tr ướ c khi tắt máy.

 Nếu bạn quyết định không phản chiếu log giao tác bạn có thể đánh mấttất cả các giao tác khi thiết bị log giao tác bị hỏng. Sự phản chiếu thiết bị loggiao tác có ngh ĩ a r ằng ngay cả khi thiểt bị log gốc bị hỏng, nội dung của loggiao tac vẫn còn để phục hồi lưu dự phòng .

Lưu ý, nếu bạn chỉ chọn phản chiếu thiết bị loggiao tác và sau đó khôngthay đổi dữ liệu quá nhiều( ngh ĩ a là log giao tác không chứa quá nhiều thôngtin) bạn có thể chọn phản chiếu các thiết bị dữ liêụ và không bảo vệ thiết bị 

log giao tác. Tốt nhất là đừng thực hiện quyết định khó chịu này: bạn sẽ khẻohơ n nếu bạn phản chiếu nhiều thứ.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 25/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 24

2.6.  Phản chi ế u và l ư u d ự phòng 

Tuy sự phản chiếu có nhiều quyền năng, nhưng ngườ i quản lý cũng cầnthực hiện lưu dự phòng cơ sở dữ liệu thông thườ ng, Sự phản chiếu giúp bạntránh đượ c việc làm hỏng ổ đĩ a, nhưng nó sẽ không có ýngh ĩ a nếu bạn phảI phục hồi lạI từ các sự cố lớ n hơ n và có tính bào hàm hơ n, chẳng hạn như máytính bị hỏng, bị phá huỷ hay bị mất tr ộm . thiên tai cũng có thể làm hỏng hệ thồng của bạn( chẳng hạn như động đất hay cháy nhà). Trong những tr ườ nghợ  p này, tr ạng thái ở  đĩ a không còn thích hợ  p vì có những vấn đề lớ n hơ n.Bạn sẽ phảI làm gì nếu phảI tạo lạI dữ liệu trên một hệ thống mớ i.?

Một chiến thuật lưu tr ữ dự phòng giúp bạn xử lý nhiều tình huống dữ liệu bí mật, từ những hàng bị xóa nhầm đến những hệ thống phá huỷ hoàn

toàn.

Lưu ý cuối cùng trong việc lưu dự phòng dữ liệu: Xem xét sự sao chụ plại như là một phần trong chiến thuật lưu dự phòng. Chươ ng 16 có miêu tả sự sao chụ p này

2.7. Các phân đ oạn( Segment)

Khi đề cậ p đến việc nâng cao khả năng hoạt động nhậ p xuất, bạn nên

sử dụng phươ ng pháp “ phân chia và chinh phục”. Ngh ĩ a là, thay vì đặt tất cả thông tin vào ổ đĩ a cùng làm việc để xử lý một yêu câuc, thông tin thườ ngxuất hiện nhanh hơ n vì có ít tr ỏ ngại hơ n.

Để chia thông tin ra ổ đĩ a, bạn có thể sử dụng các segment các segmentlà các tên logic mà ngườ i quản lý gắn cho không gian đĩ a.Gỉa sử bạn có ba ổ đĩ a C, D và E.Mục đích cuối cùng là chia thông tin trong các ổ đĩ a này. Bằngcách tạo ra các Segment và biểu diễn chúng ra các ổ này, bạn có thể yêu cầu

SQL Server chứa mỗi đối tượ ng cụ thể trên các segment

Trong mô hình này, chúng ta đã tạo ba segment, mỗi segment cho ổ đĩ a, Segment thứ nhất “ table_ segment” đượ c sử dụng để chứa các bảng.Segment thứ hai” index_ segment”, sẽ chứa các chỉ mục không theo cụm.Segment thứ ba” log_ segment” là nơ I giành cho log giao tác của SQL Server 

Chúng ta có thể chỉ định các segment cần sử dụng khi tạo ra các table

và các chỉ mục mớ i

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 26/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 25

Lưu ý, bạn không chỉ đạt các chỉ mục theo cụm trên các segment khác

vớ i các bảng chính. Trong khi các segment r ất hữu ích có thể tăng khả năng

nhậ p xuất đĩ a, thườ ng th ĩ việc đạt đượ c các k ết quả nâng cao sẽ dễ dàng hơ n

khi bạn sử dụng chiến thuật tự độn, chẳng hạn như sự k ẻ sọc đĩ a hay RAID.

K ỹ thuật tự động này ít cần quản lý hơ n phươ ng pháp phân đoạn.

Tóm lại, đừng quên r ằng sự trình bày và quản lý đĩ a là những vấn đề 

cần đượ c quan tâm. Đừng bỏ qua việc nghiên cứu và xem xét chủ đề quan

tr ọng này. Sau khi so sánh sự khác biệt giữa phươ ng pháp RAID và chiến

thuật phân đoạn, bạn có thể quyết định chọn hệ thống RAID, vì hệ thống này

đòi hỏi ít sự quản lý hơ n chiến thuật phân đoạn

2.8. Các ki ể u hệ thố ng file

Là một ngườ i quản lý, bạn có hai chọn lựa đối vớ i các kiều hệ thống

file:FATvà NTFS.Bạn có thể sử dụng tiện ích Windows NT Disk 

Administrator để chọn giữa các hệ thống file này. Hãy xem xét chi tiết cả 

kiều hệ thống File này

FAT

Fat là kiểu hệ thống đượ c viết tắt từ chữ File Allocation Table( bảng phân cấ p file), Đây là một kiểu hệ thống file k ế thừa của MS- DOS. Nó cũngcung cấ p nhiều tính năng an toàn mặc dù nó cho phép bạn khở i động cả MS-DOS và Windows NT. Nếu bạn có ý định sử dụng server cơ  sở  dữ liệu để chạy hệ thống file của bạn theo kiểu FAT.

NTFS

 NTFS là chữ viết tắt của NT File System( hệ thống fileNT). Nó đượ c

giớ i thiệu cùng vớ i hệ điều hành WindowsNT và cung cấ p nhiều đặc tính bổ 

sung, chăng hạn như tính an toàn, sự phục hồi và sự thực thi.NgoàI ra, bạn có

thể tận dụng sự nén file NTFS để bảo toàn không gian lưu tr ữ cho dù bạn có

thể chịu một số thất bại về thực thi.Nếu bạn dự kiến chuyên biệt máy NT làm

server cơ sở dữ liệu và không bao giờ khở i động MS- DOS, hãy sử dụng hệ 

thống file này, nếu bạn đang sử dụng một nền ứng dụng không thuốc Intel,

chẳng hạn như DEC Alpha hay MIPS bạn sẽ không có chọn lựa nào ngoàI

việc sử dụng NTFS, hay vì môi tr ườ ng này không thể chạy MS- DOS.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 27/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 26

Tiện ích DBCC và thông tin đĩ a

 Như đã nêu tr ướ c đây, tiện ích DBCC cung cấ p thông tin tr ạng tháI đĩ acó giá tr ị cho ngườ i quản lý cơ sở dữ liệu .

Việc chạy tốt hệ thống sẽ gặ p khó khăn nếu bạn có nhiều lưu dữ liệu, vìvậy bạn cần hiểu DBCC, Hãy xem xét công cụ quan tr ọng này và cách sử dụng nó để nhận rõ tr ạng tháI lưu tr ữ đĩ a của hệ thống.

Bạn có thể chạy DBCC vớ i nhiều tham số khác nhau.Hãy xem cáctham số này để nhận biết đĩ a có sự cố nào không?

Checkalloc

Vì chạy DBCC vớ i một tham số CHECKALLOC sẽ báo cho SQL

Server kiểm tra tính hiệu lực của không gian sử dụng. Lưu ý CHECKALLOCđã đượ c cung cấ p cho tính tươ ng hợ  p ngượ c vớ i các phiên bản tr ướ c đây củaSQL Server. Tốt nhất đang sử dụng tuỳ chọn NEWALLOC. NEWALLOCcung cấ p nhiều chi tiết hơ n CHECKALOC, và có khả năng làm việc liên tụccho dù nó có gặ p lỗi

 Nếu bạn quyết định sử dụng CHECKALLOC, bạn có thể chuyền một bên cơ sở dữ liệu dướ i dạng tham số. Nếu bạn không cung cấ p một cơ sở dữ 

liệu, SQL Server xem xét cơ sở dữ liệu hiện hành

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 28/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 27

CHƯƠNG III: CÀI ĐẶT VÀ QUẢN TRỊ SQL SERVER

I. TẠO VÀ QUẢN LÝ CÁC USER ACCOUNT

SQL Server có 2 mức (level) của một user.

Mức thứ nhất của user là login. Một login đượ c phép thiết lậ p mộtconnection vớ i SQL Server. Tất cả login đượ c lưu tr ữ trong bảngSYSLOGINS (nằm trong database MASTER).

Mức thứ hai của user là user. Mức này SQL dùng để quản lý các quyềntruy xuất tớ i các object của SQL Server như: table, view, stored procedure

trong một database.

Một user có thể ở trong một hoặc nhiều database, nhưng một user phảicó một login của database mà nó đượ c quyền truy xuất. Tất cả user đượ c lưutr ữ trong bảng SYSUSERS của mỗi database mà các user có quyền truy xuất.

SQL tổ chức 2 mức user mục đích cho phép một user có nhiều mức độ truy xuất khác nhau trên các database mà user k ết nối vào, và vẫn duy trì một password duy nhất. Để làm đượ c điều này, một user có một login đi kèm vớ i

một password, khi một login yêu cầu k ết nối, SQL Server sẽ kiểm tra loginnày kèm vớ i password. Khi không có một login hợ  p lệ, user không thể truyxuất vào bất cứ database nào trên SQL Server.

Khi tạo một login thì bao giờ  cũng tạo ra một user của login đó trêndatabase.

Để tạomột login cũng như user của login đó ta có thể sử dụng tiện íchSQL Enterprise Manager hoặc sử dụng hàm hệ thống sp_addlogin và

sp_adduser, khi sử dụng hàm này ta có thể tạo một login từ một connection cóquyền tươ ng đươ ng như SA. Điều này r ất thuận lợ i khi ta viết ứng dụng Web,từ ứng dụng Web ta có thể tạo, xóa, cũng như gán quyền cho các user.

Cú pháp của sp_addlogin là :

sp_addlogin login_id[,password [,defaultdb [,defaultlanguage]]]

trong đ ó

• 

login_id là tên của login sẽ đượ c tạo

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 29/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 28

•   password là mật khẩu đượ c gán cho login sẽ tạo, thông số này là tuỳ chọn.

•  defaultdb là tên của database mà login sẽ đượ c làm việc sau khi k ết

nối vào, nếu để NULL thì SQL Server sẽ mặc định là MASTER database.

•  defaultlanguage nếu để là NULL thì SQL Server sẽ lấy mặc định làdefault language của server.

Cú pháp của sp_adduser là

sp_adduser login_id[,username [,grpname]]

trong đ ó

•  login_id là tên của login sẽ đượ c thêm vào database, nếu login chưacó thì tác vụ này không thành công.

•  username đượ c cung cấ p để cho phép login gắn vớ i một database,điều này cho phép một login có thể k ết nối vào nhiều database khácnhau, và vớ i một database thì nó có một user.

•  grpname cho phép định ngh ĩ a tên một nhóm mà user sẽ thuộc vào

nhóm đó.Để loại bỏ một login hoặc user ta có thể sử dụng các hàm sp_droplogin

hay sp_dropuser vớ i cú pháp sp_droplogin login_id và sp_dropuserusername. 

1. Sử dụng GROUP để quản lý các user

Một nhóm bao gồm các user có quyền giống nhau, thay vì ta phải gán

quyền riêng cho từng user mỗi khi user đó đượ c tạo, ta chỉ cần tạo nhóm và phân quyền cho nhóm đó, nếu có thêm một user mớ i, thì khi tạo sẽ gắn nó vớ inhóm đã phân quyền.

Gán quyề n cho user và group

Trong SQL Server có các object như : table, view (bảng ảo), stored procedure, mỗi một user hay group sẽ có quyền hạn khác nhau đối vớ i từngobject. SQL Server có các quyền hạn sau cho mỗi user:

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 30/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 29

•  SELECT cho phép user có thể  đọc dữ liệu từ table hoặc view.Quyền SELECT có thể đượ c gán riêng cho từng cột trong table hoặcview.

•  INSERT cho phép user thêm một dòng mớ i vào table hoặc view.•  UPDATE cho phép user thay đổi dữ liệu trong table hoặc view.

Quyền UPDATE có thể đượ c gán riêng cho từng cột.

•  DELETE cho phép user xóa dữ liệu của table hoặc view.

•  EXECUTE cho phép user thi hành một stored procedure.

•  DRI/REFERENCES (Declarative Referential Integrity - DRI) là một

 phươ ng thức duy trì ràng buộc toàn vẹn database, khi đượ c gánquyền này user có thể thêm vào table một khóa ngoại (foreign key).Một cách khác duy trì toàn vẹn dữ liệu là dùng trigger.

•  DDL/Data Definition Language cho phép user có thể tạo mớ i, thêmvào, hoặc xóa các object trong database. Ví dụ: CREATE TABLE,ALTER TABLE, DROP TABLE.

•  ALL cho phép user có toàn quyền trên object. Chỉ có user SA mớ icó quyền ALL khi sử dụng các phát biểu DDL

2. Sử dụng lệnh GRANT và REVOKE để gán hay loại bỏ một quyền hạncủa user hay group.

Cú pháp

GRANT permission_list

ON object_nameTO name_list

REVOKE permission_list

ON object_name

FROM name_list

trong đ ó:

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 31/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 30

•    permission_list là danh sách các quyền hạn sẽ đượ c gán hay tướ c bỏ. Nếu nhiều hơ n một quyền thì các quyền hạn đó đượ c cách nhau bở i dấu phẩy.

•  object_name là tên của table, view, hay stored procedure mà user sẽ đượ c gán quyền hay bị tướ c quyền.

•  name_list là danh sách user hay group sẽ đượ c gán quyền hay bị tướ c quyền. Giữa các tên user hoặc group ngăn cách bằng dấu phẩy. Nếu sử dụng từ khóa PUBLIC thì tác vụ gán chung cho toàn bộ cácuser.

T ạo và gán quyề n cho user trên database đăng ký máy

Tất cả sinh viên sẽ dùng chung một account trên Windows NT server có tên là usrDKM và những ngườ i quản tr ị database đăng ký máy sẽ sử dụngchung account có tên adminDKM.

 Như vậy cần tạo 2 login và 2 user trên database có tên dbDangkymaySQL.

Có thể dùng SQL Security Manager để map một account của Windows NT server đến một login cùng tên account NT, sau đó tạo user có tên giốngnhư login và gắn vớ i login vừa đượ c map.

Cuối cùng là cấ p quyền cần thiết cho 2 user này.

Quyền hạn của usrDKM trên database dbDangkymaySQL như sau:

Object SELECT INSERT UPDATE DELETE

CaMay    

Dangkycamay        

Dangkydetaikhoa  

Detaikhoa  

Loaidetai  

May  

Sinhvien    

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 32/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 31

Sử dụng SQL Enterprise Manager gán quyền cho user usrDKM như sau:

Quyền hạn của adminDKM trên database dbDangkymaySQL như sau:

Object SELECT INSERT UPDATE DELETE

CaMay      

Dangkycamay        

Dangkydetaikhoa        

Detaikhoa      

Loaidetai      

May      

Sinhvien        

Khoa      

Admin        

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 33/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 32

Sử dụng SQL Enterprise Manager gán quyền cho user adminDKM như sau:

II. CHUYỂN TỪ MỘT DATABASE MICROSOFT ACCESS THÀNH

DATABASE SQL SERVER 

Dùng công cơ Upsizing Wizard, đây là một add-on tool nằm trong bộ Microsoft Office 97 Professional hoỉc bộ Microsoft Developer Network, côngcơ này có 2 tool:

Tool thứ nhất cđa wizard tạo một database trên SQL Server có cấu tr  ĩ ccác table, data và hầu hết các thuộc tính cđa Access database, k  ĩ  cả RelationShip cịng đưỵc chuy ĩ n đỉi theo.

Tool thứ hai là SQL Server Browser, cho phép xem, tạo, và sưa đỉi cácobject cđa SQL Server, bao gồm các table, view, default, rule, stored procedure và trigger. SQL Server Browser có th ĩ dùng đĩ quản tr ị cả hai loạidatabase đưỵc tạo bở i Upsizing Wizard hay bất k ỳ database có sẵn nào trên

SQL Server.Các bướ c thực hiện chuyển đến như sau:

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 34/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 33

Chuẩn bị:

•  Tạo database mớ i trên SQL server để chuẩn bị nhận dữ liệu chuyểnđến. Nếu muốn add dữ liệu vào một database đã có sẵn thì bỏ qua

 bưíc này.•  Tạo ODBC Data Source cho database trên SQL Server sẽ nhận dữ 

liệu chuyển đến.

•  Chạy Upsizing Wizard từ Microsoft Access, sau đó theo các bướ chướ ng dẫn chi tiết đa wizard. K ết thúc quá trình chuyển đến, dùngSQL Server Browser đi xem database k ết quả.

III. GIỚ I THIỆU CÁC TẬP LỆNH CƠ BẢN CỦA SQL

( mang tính chấ t giớ i thiệu mô phỏng, nên tham khảo k  ỹ giáo trình ngôn ng ữ  SQL)

Tậ p lệnh SELECT:Đây là lệnh thườ ng đượ c dùng nhiều nhất trongCSDL ,nó thườ ng đượ c sử dụng để nhận dữ liệu từ CSDL.

Tậ p lệnh INSERT,UPDATE,DELETE:các lệnh này thườ ng hay đượ cdùng để vào một hàng mớ i,sửa đổi hay xoá bỏ các hàng đã tồn tại trong các

quan hệ của CSDL.

Tậ p lệnh CREATE,ALTER,DROP:Ba lệnh này dùng để tạo,thayđổi,xoá bỏ bất k ỳ cấu trúc dữ liệu nào của các quan hệ như bảng,VIEW,INDEX..

Tậ p lệnh GRANT,REVOKE:Hai lệnh này đượ c sử dụng để cho phépquyền truy nhậ p hay không cho phép quyền truy nhậ p tớ i CSDL của Oraclevà cấu trúc bên trong nó.

Trong phần giớ i thiệu các tậ p lệnh này ta dùng ba bảng quan hệ sau làmví dụ minh hoạ:

R1(Nhân viên) (#NV,Ho_tên,Nsinh,nghề nghiệ p,Đìa chỉ,lươ ng)

R2(Liên k ết) (#NV,#MP)

R3(phong) (#Mp,Tên_phong,tel)

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 35/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 34

1. Lệnh SELECT 

•  Mệnh đề SELECT tươ ng ứng vớ i toán tử project(phép chiếu π) của đại

số quan hệ.Nó đượ c dùng để tạo danh sách các thuộc tính mà ta mong

muốn.Khối lệnh SELECT gồm có ba mệnh đề chính:+SELECT:xác định nội dung của các cột cấn đưa ra.

+FROM:danh sách các quan hệ đượ c quét qua

+WHERE:ứng vớ i một khẳng định lựa chọn của đạI số quan hệ.Nó làmột khẳng định liên quan đến các thuộc tính của quan hệ xuất hiện trongmệnh đề FROM:

-Một hỏi đáp cuả SELECT thườ ng có dạng:

SELECT [distinct]*/A1..An FROM r1..rm

[WHERE p];

Trong đó :

Ai là các thuộc tính

rj là các quan hệ (có thể là các TABLEs,VIEWs..)Ta có thể dùng các bídanh cho các Ai,rj.

 p:là điều kiện ràng buộc.

ở  đây WHERE có thể có hoặc không.

Dùng *để chỉ tất cả các thuộc tính của các quan hệ đượ c chọn

-Hỏi đáp này tưong đươ ng vớ i biểu diễn sau trong quan hệ:

πA1..An[S p(r1..rm)]

Để loại bỏ các bộ giá tr ị (các hàng) trùng nhau ta thêm từ khoá Distinctvào sau SELECT (tr ướ c đây SQL thêm từ khoá unique).

Trong khẳng định p:ta có thể dùng các liên từ logic and,or,not khi k ếthợ  p nhiều điều kiện

VD1:Để hiện các thông tin về một nhân viên nào đógồm(#,Họ _tên,N_sinh,Chức_vụ,địa_chỉ,lươ ng)

SELECT Distinc * FROM R1;

•  Đưa ra (họ _tên,Nsinh,chức_vụ,địa_chỉ,lươ ng,tên_phòng) vớ i điều kiệnlươ ng>500.000 và đia_chỉ không ở Hà nội

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 36/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 35

SELECT Ho_tên,Nsinhn,chức_vụ,địa_chỉ,lươ ng,tên_phòng

FROM Nhânviên R1,Liênkêt R2,Phong R3

WHERE (R1.lươ ng>500.000) and (not R1.địa_chỉ=’Hà nội’) and

(R1.#NV=R2.#NV) and (R2.#MP=R3.#MP);

Trong lệnh trên ta đã dùng R1,R2,R3 làm bí danh cho Nhân viên, Liênkêt,Phong

Các bí danh đó chỉ có tác dụng trong một câu lệnh

Các ví dụ sau này ta dùng R1,R2,R3 để thay cho các bảng trên cho gọn

Có 4 toán tử hay đượ c dùng vớ i các kiểu dữ liệu.Trong mệnh đề 

WHERE là:In (not In)

Between..and..(not between..)

Like(not like)

Is null (not is Null).

+ Toán tử In (not In):dùng để kiểm tra giá tr ị trong(không nằm trong)

một danh sách đượ c chỉ ra.Ví d ụ :đưa ra những ngườ i có đia_chỉ ở Hà nội và Hà tây.

SELECT * FROM R1 WHERE đia_chỉ in (‘Hà nội’,’Hà tây’);

+ Toán tử Between..and..(not ..) : kiểm tra giá tr ị nằm giữa (không nằmgiữa) một phạm vi đượ c chỉ ra.

VD :đưa ra những ngườ i có lươ ng nằm trong khoảng (500.000-:-1.000.000).

SELECT * FROM R1 WHERE lươ ng between 500.000 and 1.000.000;

+ Toán tử like (not like):dùng để kiểm tra những giá tr ị giống (khônggiống) vớ i giá tri sau like,thườ ng sử dụng vớ i xâu ký tự và khi ta không biếtchính xác giá tr ị cần tìm kiếm hoặc giá tr ị cần tìm kiếm giống một mẫu nàođó.Trong SQL ngườ i ta sử dụng ký hiệu % cho xâu con và ‘_’cho 1 ký tự bấtk ỳ.

VD:Tìm những ngườ i có tên mà có ký tự đầu tiên bất k ỳ,ký tự tiề p theolà OA và tiế p theo là dãy ký tự bất k ỳ:

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 37/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 36

SELECT *FROM R1 WHERE hoten=’_OA%’;

+ Toán tử Is Null (not is Null):kiểm tra cho các giá tr ị r ỗng (khôngr ỗng);

VD:Đưa ra tất cả những nhân viên mà đã cậ p nhật địa chỉ SELECT *FROM R1 WHERE Dia_chi Not Is Null;

-Các hàm hay đượ c sử dụng trong mệnh đề SELECT:

+ AVG:tính giá tr ị trung bình của một hoặc nhiều tr ườ ng bỏ qua các giátr ị r ỗng.

VD:tính lươ ng TB của cơ quan:

SELECT AVG(lươ ng) FROM R1;+ Count:đượ c dùng để đếm các bộ (hàng)

VD:ĐIểm tổng số bản ghi từ R1 có lưong>500.000

SELECT count(*) FROM R1 WHERE lươ ng>500.000

+ Hàm Max:tìm giá tr ị lớ n nhất của biểu thức:

VD:tìm ngườ i có lươ ng lớ n nhát trong R1 có địa chỉ ở Hà Tây

SELECT Max(lươ ng) FROM R1 WHERE địa_chỉ=’Hà_tây’;+ Hàm Min:tìm giá tr ị nhỏ nhất của biểu thức:

VD:tìm ngườ i có lươ ng nhỏ nhát trong R1 có địa chỉ ở Hà Tây

SELECT Min(lươ ng) FROM R1 WHERE địa_chỉ=’Hà_tây’;

+ Hàm Sum:tính tổng giá tr ị bỏ qua giá tr ị r ỗng.

VD:Tính tổng lươ ngcủa cơ quan

SELECT Sum(lươ ng) FROM R1;

 Ngoài 3 mệnh đề chính trên ta còn có thể :

+ Tìm kiếm theo nhóm nhờ mệnh đề GROUP BYđượ c sử dụngđể phânchia các bộ thành các nhóm nhỏ .

VD:Đưa ra danh sách các nhân viên theo nhóm địa chỉ 

SELECT *FROM R1 Group by Đia_chỉ;

Thườ ng đi vớ i mệnh đề Group by là mệnh đề Having by sử dụng để chỉ ra những hạn chế của các nhóm đượ c hiển thị.Chú ý r ằng mệnh đề Having by

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 38/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 37

chỉ đi vớ i Group by và điều kiện của nó chỉ tác động đến từng nhóm bản ghiđượ c chỉ ra ở mệnh đề Group by chứ không tác động đến toàn bảng.

VD: Đưa ra danh sách các nhóm nhân viên cùng chức vụ và có lươ ng>500.000

SELECT * FROM R1

Group by chức_vụ 

Having by lươ ng>500.000

-Sắ p xế p theo một hoặc nhiều tr ườ ng ta dùng mệnh đề 

ORDER BY (colum1/[ASc|Desc] ..)

+ASc sắ p xế p theo chiều tăng (ngầm định)+Desc sắ p xế p theo chiều giảm

VD Sắ p xế p nhân viên theo chiều giảm theo lươ ng ,nếu cùng mứclươ ng thì theo sắ p xế p theo chiều xế p theo chiều tăng ho_tên

SELECT * FROM R1 ORDER BY lươ ng/Desc,ho_tên;

2. Nhóm lệnh INSERT, UPDATE, DELETE:

  INSERT:

Dùng để chèn dl vào một quan hệ chúng ta có thể tạo ra 1 bộ để chènvào hoặc một tậ p các bộ từ hỏi đáp SELECT để chèn vào

Cú pháp của lệnh: INSERT INTO R[A1..An] VALUES(vl1..)

VD:chèn 1 hàng (‘020’,’Nguyễn tr ọng Ngh ĩ a’,Bảo vệ’,’Hànội’,’800.000’)vào R1

INSERT INTO R1 VALUES(‘020’,’Nguyễn tr ọng Ngh ĩ a’,Bảo vệ’,’Hà nội’,800.000);

  UPDATE

Dùng để sử đổi giá tr ị của một hoăc nhiều bộ đã tồn tại trong quan hệ cú pháp cuả lệnh

UPDATE R SET..[WHERE p]

VD:-lươ ng của tất cả các nhân viên của cơ quan cùng tăng 5%UPDATE R1 SET lươ ng=lươ ng*1,05

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 39/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 38

-chỉ tăng lươ ng của những ngườ i có lươ ng<500.000 và tăng 10%

UPDATE R1 SET lươ ng=lươ ng*1,1 WHERE lươ ng<500.000

  DELETE:

Dùng để xoá bỏ 1 hoặc nhiều bộ trong quan hệ 

Cú pháp:

DELETE FROM R[WHERE P]

những bộ nào thoả mãn đk P thì mớ i bị huỷ bỏ khỏi quan hệ R 

VD: DELETE FROM R1 WHERE ng_sinh>’01-01-1935’;

Xoá bỏ tất cả các nhân viên ta dùng lệnh

DELETE FROM R1;

Chú ý:lệnh DELETE chỉ thao tác vớ i 1 quan hệ.Muốn huỷ các bộ từ nhiều quan hệ ta dùng DELETE cho mỗi quan hệ.Lệnh DELETE chỉ đánhdấu các bản ghi chứ chưa thực sự xoá hẳn ,ta có thể khôi phục lại đượ c .Để xoá hẳn ta dung lệnh COMMIT ,khi đã ra lệnh này ta không thể khôi phục lạiđượ c nữa .Khi chưa ra lệnh COMMIT ta có thể khôi phục lại bằng cách dùnglệnh ROLLBACK. 

3. Nhóm lệnh CREATE, ALTER, DROP:

3.1.  Lệ nh CREATE 

Lệnh này dùng để tạo ra các quan hệ như TABLE,VIEW,INDEX

  CREATE TABLE

•  Bảng là một cấu trúc cơ  bản để cất giữ trong hệ thống quan hệ.Có

khuôn dạng hai chiều gồm có các cột và hàng.Nólà yếu tố cơ bản chocác thao tác khác nhau.Có thể nói việc tạo bảng là bướ c đầu tiên quantr ọng nhất để thiết lậ p CSDL.

•  Cú pháp của lệnh này:

CREATE TABLE table-name(colom_name type(size)..)

Khi tạo ra bảng chúng ta phải chỉ ra kiểu dữ liệu của cột và mỗi cột chỉ có thể có môt kiểu dữ liêụ duy nhất.Khi tạo bảng ta có thể đưa ra các ràng

 buộc

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 40/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 39

Các ràng buộc của các tr ườ ng có thể là : primary key,foreign ket,unique,not null ...

VD:tạo bảng nhân viên

CREATE TABLE NHAN_VIEN (#NV varchar(4) constraint  NV_Primary key,ho_tên Varchar(25),Ng_sinh date,chứcvụ varchar(20),đia_chỉ varchar(30).lươ ng number(7));

Trong VD trên ta tạo ra một ràng buộc là #NV đượ c định ngh ĩ a là primary key

•  Ta cũng có thể tạo ra bảng mớ i vớ i cấu trúc và dữ liệu từ 1 bảng khác.

Cú pháp:

CREATE TABLE TABLE_name[(colum_name..)]AS

SELECT statement;

VD:tạo ra 1 bảng mớ i có tên là NVN (#NV,họ  _tên) từ bảng NHAN_VIEN

CREATE TABLE NVN AS SELECT #NV,họ  _tên FROM NHAN_VIEN;

  CREATE VIEW:

•  VIEWs giống như những window mà thông qua những window này dữ liệu có thể đượ c xem hoặc thay đổi.

 Nó có thể đượ c tạo ra dựa trên một hay nhiều bảng trong CSDL.Nó làmột bảng ảo không tồn tại thực sự trong CSDL.Nhưng nó có thể đượ c truynhậ p như là các bảng thông thườ ng.Ta có thể nhận đượ c các hàng từ VIEWvớ i các lệnh SELECT và trong hầu hết các tr ườ ng hợ  p của việc

UPDATE,INSERT,DELETE hàng từ CSDL thông qua VIEW.Có một vàItr ườ ng hợ  p không cho phép UPDATE từ CSDL.

•  Việc sử dụng VIEW có r ất nhiều hữu ích trong việc:

+Hạn chế việc truy nhậ p CSDL .SELECT từ một VIEW có thể hiển thị  phần hạn chế của CSDL một cách nhanh chóng.

+Cho phép ngườ i dùng tạo ra những hỏi đáp đơ n giản để nhận đượ c k ếtquả từ những hỏi đáp phức tạ p mà không cần biết cách thức nối các bảng như 

thế nào.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 41/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 40

+Cung cấ  p các phần tử dữ liệu độc lậ  p cho ngườ i sử dụng và cácchưong trình viết ứng dụng dẫn đến đảm bảo cho việc bảo mật dữ liệu ,chedấu dữ liệu nào đó khỏi một user nào đó.

Cú pháp : CREATE [or REPLACE/FORCE] VIEW view_name[colum..]

AS Query,[with check option]

•  OR REPLACE:cho phép một VIEW đượ c tạo ra thậm chí nếu mộtVIEW đã tồn tại có cùng tên như vậy.Do đó nó sẽ thay thế VIEW cũ.

FORCE:cho phép tạo ra VIEW thậm chí các bảng cơ  sở  chưa tồn tạinhưng các bảng phải tồn tại tr ướ c khi VIEW đó đượ c sử dụng

1.  Mệnh đề WITH CHECK OPTION:chỉ ra r ằng việc INSERT,UPDATEthực hiện thông qua VIEW là không cho phép.

VD: Tạo VIEW có tên NV_phong từ R1,R2,R3 gồm các tr ườ ngHọ _tên,phòng

CREATE VIEW NV_phong AS SELECT hotên,tênphong FROMR1,R2,R3 WHERE (R1.#NV=R2.#NV)and (R2.#MP=R3.#MP) with check option;

  CREATE INDEX

Bảng chỉ số là một đối tượ ng đặc biệt đượ c tạo ra để cung cấ p cho việctruy nhậ p tớ i bảng trong CSDL một cách nhanh chóng

Cú pháp:

CREATE INDEX index_name ON table(colum)

VD: CREATE INDEX Nhân _ vien_id ON NHAN_VIEN (Họ _tên);

3.2.  Lệ nh ALTER

•  Dùng để hoặc là thêm một hay nhiều tr ườ ng vào bảng hoặc sửa đổi mộtcột hiện

tại.SQL ANSI chuẩn không cho phép huỷ bỏ các cột.

•  Cú pháp:

ALTER TABLE TABLE_name ADD | MODIFY | DROP option

(colum Datatype..)

+ADD:thêm cột mớ i

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 42/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 41

+MODIFY:sửa đổi cột

+DROP option xoá bỏ các ràng buộc

VD1:thêm tr ườ ng gia đình kiểu char(1) vào R1

ALTER TABLE R1 ADD gia đình char(1);

VD2:Thay đổi tr ườ ng Địa_chỉ Varchar(30) trong R1 thành Địa_Chỉ(20):

ALTER TABLE R1 MODIFY Địa_Chỉ varchar(20);

VD3:Huỷ bỏ ràng buộc tr ườ ng khoá #NV trong R1

ALTER TABLE R1 DROP constraint NV_prim

3.3.  Lệ nh DROP 

•  Dùng để xoá bỏ một quan hệ,khi ta xoá bỏ một bảng cơ sở thì tất cả cácVIEW,INDEX đượ c định ngh ĩ a trên bảng đó sẽ bị xoá bỏ .

•  Cú phap:

DROP TABLE/VIEW/INDEX Name;

VD:Xóa bỏ Nhân_viên_id;

DROP INDEX Nhân_viên_id;

4. Tập lệnh GRANT,REVOKE

•  Để kiểm tra quyền truy nhậ p CSDL dùng lệnh GRANT

•  Cú pháp:

  GRANT privileges ON object TO (user/public)[WITH GRANTOPTION]

•  Các quyền (privileges) truy nhậ p CSDL:

+Read(đọc)

+SELECT(chọn)

+write(ghi)

+INSERT (bổ sung)

+UPDATE (sửa đổi)

+DELETE,r un.

•  Đối tượ ng (object) :là tên các quan hệ hoặc tên các chươ ng trình.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 43/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 42

•  Tên nguờ i sử dụng: Tên của một ngườ i, một nhóm ngườ i hoặc danhsách ngườ i

•   public:cho tất cả mọi ngườ i cùng đượ c sử dụng.

•  Từ khoá :with grant OPTION: đảm bảo để ngườ i sử dụng có thể tiế ptục trao quyền sử dụng cho ngườ i khác.

•  VD: cho phép SELECT, INSERT, UPDATE trên bảng R1 cho Ngh ĩ a,Khôi

•  GRANT SELECT, INSERT, UPDATE ON R1 TO Ngh ĩ a, Khôi withgrant option;

 Ngh ĩ a, Khôi có thể trao quyền trên cho ngườ i khác.

•  Để huỷ bỏ quyền truy nhậ p

•  Cú pháp: REVOKE privileges ON object FROM user 

VD:để huỷ bỏ quyền UPDATE từ Ngh ĩ a:

REVOKE UPDATE ON R1 FROM Ngh ĩ a;

IV. CÀI ĐẶT MÁY CHỦ SQL VÀ CÁCH SỬ DỤNG TOOL QUẢN TR Ị 

1. Hướ ng dẫn cài đặt máy chủ SQL Server trên môi trườ ng NT, Cấu

hình SQL Client

 Nhữ ng đ i ề u cần bi ế t tr ướ c khi cài đặt:

 Đố i vớ i các thiế t bị phần cứ ng:

•  Một máy chủ cài trên môi tr ườ ng NT, vùng điều khiển vùng chính

Primary Domain Controller.

•  Các máy tr ạm đượ c cấu hình trên môi tr ườ ng mạng NT, trong vùngdomain của máy chủ trên.

•  Trong môi tr ườ ng làm việc ổn định SQL, điều kiện thiết bị phần cứngcài SQL Server là 64 Mb bộ nhớ RAM, khoảng đĩ a tr ống trên 100 Mb.

2. Phần cài đặt SQL Server bao gồm các bướ c sau:

Máy chủ NT đã đượ c cài đặt sẵn, các thao tác trên máy chủ NT như sau:

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 44/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 43

B1. Chọn biểu tượ ng trên ổ đĩ a CD như hình vẽ dướ i

B2. Kích đúp biểu tượ ng Setup

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 45/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 44

B3. Chọn nút continue để tiế p tục 

B4. Nhậ  p tên tổ chức, tên công ty và Product ID chọn nút continue

B5. Hiển thị trên màn hình, kiểm tra thông số chính xác chọn nútcontinue để tiế p

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 46/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 45

B6. Chọn mục Install SQL Server and Utilities, chọn nút continue để tiế p

B7. Chọn nút Resum để tiế p tục cài đặt

B8. Đọc nội dung License, chọn nút I Agree để tiế p 

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 47/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 46

B9. Lựa chọn ổ đĩ a và thư mục cài đặt, chọn nút Continue để tiế p

B10. Kiểm tra các thông tin yêu cầu ổ đĩ a , chọn nút continue để tiế p tục 

B11. Chọn mục Install on Hard Disk, chọn nút Continue để cài đặt tiế p

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 48/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 47

B12. Nếu muốn quy định chế độ tự khở i động sau mỗi lần máy chủ NTkhở i động chọn hai nút Auto Start Server at boot time & Auto Start SQLExecute at boot time, chọn nút Continue để cài đặt tiế p

B13. Lựa chọn các mục tươ ng ứng:

Install the SQL Execute service to log on to Window NT as: (Cài đặtSQL Execute service để login vào máy chủ NT)

Thực hiện nhậ p mật nếu chọn bướ c này.

Install to log on as Local System account ( Cài đặt để login vào hệ thốngmặc định trên máy chủ)

Chọn nút Continue để tiế p tục

Xuất hiện màn hình cài đặt như sau:

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 49/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 48

B14. K ết thúc cài đặt chọn nút Exit to Windows NT để k ết thúc quá trìnhkhở i động

B15. Nên khở i động lại hệ điều hành Windows NT để thực hiện khở i tạotự động các dịch vụ SQL sau khi khở i động lại NT. Chọn như hình vẽ dướ iđây:

B16. Thực hiện đăng nhậ p máy chủ:

User đăng nhậ p: Sa

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 50/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 49

Chọn Enter để tiế p tục

B17. Chọn nút OK để Login đăng nhậ p máy chủ SQL

Toàn bộ thao tác trên k ết thúc cài đặt SQL trên máy chủ NT

V. CÁCH CÀI ĐẶT SQL CLIENT

Trên máy tr ạm để k ết nối vào máy chủ SQL thườ ng hay dùng phổ biến

các hệ điều hành như: Windows 95 /98. Nt workstation

- Cài đặt đăng nhậ p login và quản tr ị từ Client

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 51/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 50

B1. Thực hiện như các bướ c từ B1 thực hiện cài đặt giống trên máy chủ đến khi xuất hiện màn hình sau:

B2. Chọn các mục muốn cài đặt hiển thị trên màn hình Client, sau đóchọn nút Continue để tiế p tục cài

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 52/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 51

B3. Chọn mục Install on Hard Disk, chọn Continue để tiế p

B4. Chọn nút Reboot để khở i động lại hệ điều hàn, k ết thúc quá trình càiđặt

- Cài đặt Tools SQL để truy nhậ p vào CSDL trên máy chủ 

B1. Chọn file cài đặt trên ổ CD như màn hình sau:

B2. Chọn File Setup.exe để bắt đầu cài đặt

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 53/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 52

B3. Chọn tiế p nút Continue để tiế p tục cài đặt

B4. Định vị thư mục cần cài đặt trên ổ đĩ a, chọn nút Continue để tiế p tụccài đặt

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 54/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 53

B5. Đánh dấu các mục lựa chọn trong Installation Options, chọn Installđể tiế p tục cài đặt

B6. Chọn OK để k ết thúc quá trình cài đặt

- Các bướ c thự c hi ệ n k ế t nố i SQL Client vớ i máy chủ SQL

B1. Chọn chươ ng trình như hình vẽ dướ i đây:

Xuất hiện màn hình như sau:

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 55/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 54

B2. Chọn tên SQL Server, đăng nhậ p tên User và mật khẩu. Sau đó chọnnút Connect để k ết nối.

Khi k ết nối thành công dướ i ô màn hình như sau:

B3: Trên cửa sổ dòng lệnh gõ câu lệnh SQL (Tham khảo các câu lệnhSQL trong phần nội dung lý thuyết.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 56/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 55

Ví dụ: Hiển thị các bản ghi trong tệ p CSDL tên là Jobs. Gõ cú pháp dònglệnh như sau:

Select * from Jobs

Trên màn hình nhận đượ c k ết quả như sau:

VI. GIỚ I THIỆU MỘT SỐ CHỨ C NĂNG QUẢN TR Ị SQL SERVER 

Để quản tr ị các chức năng, chọn trên thanh công cụ Microsoft Enterprise

trên SQL Server hoặc SQL Client

SQL Enterprise Manager

Xét chi tiết mọi thông tin mà SQL Enterprise Managar báo cáo về hoạtđộng ngườ i dùng. Tất cả những số liệu thống kê đều đượ c trình bày trongchươ ng này khi xem xét các ví dụ.

Detail activity

Status: Cho biết tr ạng thái hiện hành của tiến trình.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 57/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 56

Process ID: Đây là bộ nhận dạng số mà SQL Server gán cho mỗi tiếntrình riệng.

Login ID: Đây là bộ nhận dạng hay bí danh mà ngườ i sử dụng hay tiến trìnhđã sử dụng khi nối k ết vớ i cơ sở dữ liệu.

Database: Đây là cơ  sở dữ liệu hiện hành mà ngườ i sử dụng haytiến trình đang truy cậ p.

User name: Đây là tên ngườ i sử dụng hiện tại đang nhận dạng tiếntrình.

Command: Đây là lệnh đang chạy để nối k ết khi bạn đưa ra mànhình. Bạn có thể cậ p nhậ p lệnh mớ i hơ n bằng cách nhấn nút refresh.

Host: Đây là máy mà ngườ i sử dụng hay tiến trình định vị. Đốivớ i các tiến trình hệ thống, chẳng hạn như lazywriter và checkpointđang nghỉ, giá tr ị này để tr ống, vì bở i mặc định, chúng nằm trên máyhiện hành.

Application: Đây là tên của tiến trình ứng dụng mà ngườ i sử dụnghay tiến trình đang chạy. Đối vớ i các tiến trình hệ thống, giá tr ị nàyđượ c để tr ống.

Blocked by: Nếu ngườ i sử dụng hay tiến trình nằm theo khối,tr ườ ng này cho biết tiến trình ID của ngườ i chịu trách nhiệm đối vớ ikhối này.

Blocking: Nếu ngườ i sử dụng hay tiến trình này đang gây cản tr ở  cho ngườ i khác, tr ườ ng này hiển thị một giá tr ị khác zero. Giá tr ị zerocó ngh ĩ a r ằng ngườ i sử dụng hay tiến trình không gây cản tr ở cho bấtk ỳ ai khác.

Lock type: Nếu ngườ i sử dụng hay tiến trình đang giữ một khoá,SQL Server hiển thị một biểu tượ ng trình bày kiểu khoá. Nếu không cókhoá, SQL Server sẽ hiển thị “( No Lock)”.

Locked object: Nếu ngưòi sử dụng hay tiến trình đã khoá một đốitượ ng, SQL Server hiển thị tên đối tượ ng trong tr ườ ng hợ  p này.

Group name: Tr ườ ng này cung cấ p tên nhóm cơ  sở dữ liệu củangườ i dùng.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 58/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 57

CPU usage: Tr ườ ng này cho biết số tích luỹ của I/O logic màngườ i sử dụng hay tiến trình đã sử dụng k ể từ khi nối k ết vớ i SQLServer.

Physical I/O: Tr ườ ng này cho biết số thao tác I/O vật lý hiện hànhmà thao tác cơ sở dữ liệu của ngườ i sử dụng hoặc của tiến trình đã thựchiện.

Host Process: Đây là một tiến trình ID hệ cơ số 16 đượ c gán bở ihệ điều hành NT.

1. Tạo lập một Database mớ i

B2. Sau khi nhậ  p tên database và các thông số cần thiết. Ví dụ tạoDatabase có tên là databasevitti hình vẽ như sau:

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 59/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 58

B3. Tạo lậ p mớ i các tệ p Database: Có hai cách: Cách1 dùng tr ực tiế pcác câu lệnh khở i tạo bảng dữ liệu của SQL, Cách 2 thực hiện thao tác tạolậ p các bảng CSDL như sau:

B4. Đóng cửa sổ và ghi laị lên tệ p dữ liệu

2. Tạo lập User Database & Group Database

B1. Chọn New User nếu muốn tạo một tài khoản mớ i ( Đối vớ i tạo User ) 

B2. Nhậ p các thông số cần tạo một tài khoản mớ i.

Ghi chú: Các bướ c tạo lậ p các nhóm tươ ng tự.

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 60/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 59

3. Quản trị các database và quyền chia sẻ:

Kích đúp chọn database cần quản tr ị xem đầy đủ các thông tin như sau:

Trong tr ườ ng hợ  p quản tr ị mối quan hệ giữa các Database và các nhóm

hoặc User như màn hình dướ i đây:

5/11/2018 gioi thieu vè sql - slidepdf.com

http://slidepdf.com/reader/full/gioi-thieu-ve-sql 61/61

 

BAN CHỈ ĐẠO CNTT CỦA CƠ QUAN ĐẢ  NG ` SQL Server và quản tr  ị  

Trang 60

Ví dụ: Đối vớ i User Database haipv đượ c các quyền đối vớ i Databasenhư: tạo lậ p bảng CSDL, tạo bảng View hiển thị và tạo lậ p các luật bảng làmviệc

4. Các hiển thị biểu đồ Database

Để xem các thông tin chi tiết về Database ta chọn mục màn hình dướ iđây:

K ết luận:

Trên đây là bài thực hành cài đặt máy chủ SQL Server và cấu hình máytr ạm, giúp cho các bạn học viên nắm đượ c và tự cài đặt đượ c CSDL lên máychủ mạng. Các vấn đề liên quan quản tr ị chi tiết đượ c trình bày tr ực tiế p

trong bài giảng thực tậ p.