Bài 6: Bảo mật trong SQL SERVER 2008 - Giáo trình FPTMasterCode.vn
Quản trị viên CSDL là người chịu trách nhiệm về hiệu
năng, tính toàn vẹn dữ liệu và bảo mật cho CSDL. Đồng
thời người quản trị có vai trò lập kế hoạch, phát triển,
khắc phục sự cố xảy ra với CSDL.
Các tác vụ quản trị thường thực hiện
Sao lưu & phục hồi database SQL Server | zBackup.vnzBackupVN
Tài liệu giúp bạn nắm bắt cơ chế sao lưu và phục hồi database SQL Server, với các ví dụ minh họa cách sử dụng SQL Server Management Studio và T-SQL để sao lưu và phục hồi: Full Database, Differential Database, Transaction Log.
Tài liệu được xây dựng bởi Backup Academy Team của zBackup.vn. Để tìm hiểu thêm về sao lưu SQL Server, vui lòng truy cập http://backupacademy.zbackup.vn/category/sql-server.
Bài 1: Tổng quan về cơ sở dữ liệu - Giáo trình FPTMasterCode.vn
Giải thích khái niệm dữ liệu và cơ sở dữ liệu (CSDL)
Các phương pháp quản lý dữ liệu và các đặc trưng
Giải thích các mô hình dữ liệu khác nhau
Hệ quản trị CSDL (DBMS) và hệ quản trị CSDL quan hệ
(RDBMS)
Mục tiêu bài học hôm nay
Giải thích khái niệm dữ liệu và cơ sở dữ liệu (CSDL)
Các phương pháp quản lý dữ liệu và các đặc trưng
Giải thích các mô hình dữ liệu khác nhau
Hệ quản trị CSDL (DBMS) và hệ quản trị CSDL quan hệ
(RDBMS)
Bài 6: Bảo mật trong SQL SERVER 2008 - Giáo trình FPTMasterCode.vn
Quản trị viên CSDL là người chịu trách nhiệm về hiệu
năng, tính toàn vẹn dữ liệu và bảo mật cho CSDL. Đồng
thời người quản trị có vai trò lập kế hoạch, phát triển,
khắc phục sự cố xảy ra với CSDL.
Các tác vụ quản trị thường thực hiện
Sao lưu & phục hồi database SQL Server | zBackup.vnzBackupVN
Tài liệu giúp bạn nắm bắt cơ chế sao lưu và phục hồi database SQL Server, với các ví dụ minh họa cách sử dụng SQL Server Management Studio và T-SQL để sao lưu và phục hồi: Full Database, Differential Database, Transaction Log.
Tài liệu được xây dựng bởi Backup Academy Team của zBackup.vn. Để tìm hiểu thêm về sao lưu SQL Server, vui lòng truy cập http://backupacademy.zbackup.vn/category/sql-server.
Bài 1: Tổng quan về cơ sở dữ liệu - Giáo trình FPTMasterCode.vn
Giải thích khái niệm dữ liệu và cơ sở dữ liệu (CSDL)
Các phương pháp quản lý dữ liệu và các đặc trưng
Giải thích các mô hình dữ liệu khác nhau
Hệ quản trị CSDL (DBMS) và hệ quản trị CSDL quan hệ
(RDBMS)
Mục tiêu bài học hôm nay
Giải thích khái niệm dữ liệu và cơ sở dữ liệu (CSDL)
Các phương pháp quản lý dữ liệu và các đặc trưng
Giải thích các mô hình dữ liệu khác nhau
Hệ quản trị CSDL (DBMS) và hệ quản trị CSDL quan hệ
(RDBMS)
Bài 4: Lập trình với CSDL ADO.NET & Kiến trúc không kết nối & Lập trình giao ...MasterCode.vn
Giới thiệu về ADO.NET
Các thành phần của ADO.NET
DataProvider
DataSet
Các loại DataProvider
Sql Data Provider
SqlConnection
SqlDataAdapter
Ứng dụng nhiều form
Ứng dụng SDI
Ứng dụng MDI
Thêm Toolbar, Tooltip vào form
Bài 1: Làm quen với SQL Server 2008 - Giáo trình FPTMasterCode.vn
Truy cập tới CSDL qua mạng
Hỗ trợ mô hình Client/Server
Kho dữ liệu (Data WareHouse)
Tương thích với chuẩn ANSI/ISO SQL -92
Hỗ trợ tìm kiếm Full- Text (Full- Text Search)
Hỗ trợ tìm kiếm thông tin trực tuyến (Books Online)
Các kiểu dữ liệu mới và các hàm thư viện làm việc với
các kiểu dữ liệu này như XML, Các kiểu dữ liệu giá trị lớn
(lưu ảnh, video…)
Hỗ trợ FileStream để thao tác với các đối tượng nhị phân
lớn (BLOB)
Language-Integrated Query (LINQ)
Hỗ trợ DotNet 3.5
……
Một số tính năng của SQL Server 2008
Các kiểu dữ liệu mới và các hàm thư viện làm việc với
các kiểu dữ liệu này như XML, Các kiểu dữ liệu giá trị lớn
(lưu ảnh, video…)
Hỗ trợ FileStream để thao tác với các đối tượng nhị phân
lớn (BLOB)
Language-Integrated Query (LINQ)
Hỗ trợ DotNet 3.5
……
Bài 2: Các khái niệm trong CSDL quan hệ - Giáo trình FPTMasterCode.vn
Tìm hiểu các bước thiết kế CSDL quan hệ
Tìm hiểu các khái niệm trong thiết kế CSDL quan hệ:
Các khái niệm trong thiết kế CSDL mức khái niệm
Các khái niệm trong thiết kế CSDL mức vật lý
Làm quen với hệ quản trị CSDL Microsoft Access
Tạo các bảng và truy vấn trong Microsoft Access.
Bài 4: Lập trình với CSDL ADO.NET & Kiến trúc không kết nối & Lập trình giao ...MasterCode.vn
Giới thiệu về ADO.NET
Các thành phần của ADO.NET
DataProvider
DataSet
Các loại DataProvider
Sql Data Provider
SqlConnection
SqlDataAdapter
Ứng dụng nhiều form
Ứng dụng SDI
Ứng dụng MDI
Thêm Toolbar, Tooltip vào form
Bài 1: Làm quen với SQL Server 2008 - Giáo trình FPTMasterCode.vn
Truy cập tới CSDL qua mạng
Hỗ trợ mô hình Client/Server
Kho dữ liệu (Data WareHouse)
Tương thích với chuẩn ANSI/ISO SQL -92
Hỗ trợ tìm kiếm Full- Text (Full- Text Search)
Hỗ trợ tìm kiếm thông tin trực tuyến (Books Online)
Các kiểu dữ liệu mới và các hàm thư viện làm việc với
các kiểu dữ liệu này như XML, Các kiểu dữ liệu giá trị lớn
(lưu ảnh, video…)
Hỗ trợ FileStream để thao tác với các đối tượng nhị phân
lớn (BLOB)
Language-Integrated Query (LINQ)
Hỗ trợ DotNet 3.5
……
Một số tính năng của SQL Server 2008
Các kiểu dữ liệu mới và các hàm thư viện làm việc với
các kiểu dữ liệu này như XML, Các kiểu dữ liệu giá trị lớn
(lưu ảnh, video…)
Hỗ trợ FileStream để thao tác với các đối tượng nhị phân
lớn (BLOB)
Language-Integrated Query (LINQ)
Hỗ trợ DotNet 3.5
……
Bài 2: Các khái niệm trong CSDL quan hệ - Giáo trình FPTMasterCode.vn
Tìm hiểu các bước thiết kế CSDL quan hệ
Tìm hiểu các khái niệm trong thiết kế CSDL quan hệ:
Các khái niệm trong thiết kế CSDL mức khái niệm
Các khái niệm trong thiết kế CSDL mức vật lý
Làm quen với hệ quản trị CSDL Microsoft Access
Tạo các bảng và truy vấn trong Microsoft Access.
This document provides an introduction and overview of graph databases. It begins with trends in data becoming bigger, more connected, and semi-structured. It then discusses NoSQL databases like key-value stores, column families, and document databases. Graph databases are introduced as optimized for interconnected data with nodes and relationships. Neo4j is presented as a graph database with an explicit graph structure and property graph model. Examples of using Cypher and Gremlin to query a graph are provided.
The document discusses modeling techniques in UML and ORM. It compares how UML and ORM represent various modeling concepts such as associations, attributes, constraints. It notes that while UML has become dominant, ORM allows representing some concepts like n-ary associations and constraints in a more precise way. The document also discusses modeling concepts in UML like generalization/specialization, associations, attributes.
This document provides an overview of cryptography and its applications. It discusses the history of cryptography beginning in ancient Egypt. It defines basic cryptography terminology like plaintext, ciphertext, cipher, key, encryption, decryption, cryptography, and cryptanalysis. It describes classical ciphers like the Caesar cipher and substitution ciphers. It also discusses cryptanalysis techniques, transposition ciphers, modern symmetric ciphers, public key cryptography including RSA, key distribution methods, and hybrid encryption.
2. Faculty of Information Technology
Nguyễn Mai Huy
nmhuy@ntt.edu.vn
01
Thảo luận + BT (10%)
Kiểm tra giữa kỳ (30%)
Thi tự luận (60%)
03
Tín chỉ: 3
Lý thuyết: 30 tiết
Thực hành: 30 tiết
Bài tập: TH + Ở nhà
02
Slide Bài giảng
Tài liệu tham khảo
(Cuối slide)
04
3. Nguyễn Mai Huy – Master of Information technology
Overview of the subject
Tổng quan về DBMS
DML Commands
(Insert into, Update, Delete, …)
DDL Commands
(Create, Alter, Drop, …)
Select command
(Wild card, Filter, Order, …)
4. Nguyễn Mai Huy – Master of Information technology
Overview of the subject
Select command
(Join, Group, Having, …)
Triggers
(After or For, Instead of)
Views
Functions
(Built-in, User-define)
5. Nguyễn Mai Huy – Master of Information technology
Overview of the subject
Stored Procedure
(Control-of-flow statements)
Ôn tập, giới hạn KT
Stored Procedure
(Cursors, Handling Exceptions)
Thi kiểm tra cuối học kỳ
7. Nguyễn Mai Huy – Master of Information technology
SQL: "Ngôn ngữ truy vấn dữ liệu có tính cấu trúc" - là loại ngôn ngữ lập trình cho máy tính, phục
vụ cho các mục đích: Tạo, Sửa, và Lấy dữ liệu từ một hệ quản trị cơ sở dữ liệu quan hệ (DBMS -
Database Management System).
Tháng 6 năm 1970, tạp chí Communications of the ACM công bố mô hình A Relational Model of
Data for Large Share Data Banks ("Mô hình quan hệ cho dữ liệu dùng trong ngân hàng dữ liệu chia
sẻ có khối lượng lớn") của tiến sĩ Edgar F. Codd, mô hình này sau đó đã được chấp nhận rộng rãi
và được xem là mô hình tiêu chuẩn dùng cho hệ thống quản lý cơ sở dữ liệu quan hệ.
Giữa những năm 1970, một nhóm chuyên gia thuộc trung tâm nghiên cứu của IBM tại San Jose phát
triển hệ thống cơ sở dữ liệu "Hệ thống R" dựa trên mô hình của Codd, lấy tên là Structured
English Query Language, viết tắt là "SEQUEL" ("Ngôn ngữ truy vấn có cấu trúc dựa trên tiếng
Anh"), ngôn ngữ này được thiết kế để quản lý và truy xuất dữ liệu lưu trữ trong “Hệ thống R”. Sau
này, tên viết tắt SEQUEL được rút gọn thành SQL để tránh việc tranh chấp nhãn hiệu (từ SEQUEL
đã được một công ty máy bay của UK là Hawker-Siddeley đăng ký trước đó).
Mặc dù SQL bị ảnh hưởng bởi công trình của tiến sĩ Edgar F. Codd nhưng nó lại được thiết kế bởi
Donald D. Chamberlin và Raymond F. Boyce tại IBM.
History
8. Nguyễn Mai Huy – Master of Information technology
SQL được thừa nhận là tiêu chuẩn của ANSI (American National
Standards Institute) vào năm 1986 và ISO (International Organization for
Standardization) năm 1987. ANSI đã công bố cách phát âm chính thức của
SQL là "ess kyoo ell", nhưng rất nhiều các chuyên gia cơ sở dữ liệu nói
tiếng Anh vẫn gọi nó là "SEQUEL".
History
Năm Tên Tên khác Chú giải
1986 SQL-86 SQL-87
Được công bố đầu tiên bởi ANSI. Được phê
chuẩn bởi ISO năm 1987.
1989 SQL-89 Thay đổi nhỏ.
1992 SQL-92 SQL2 Thay đổi lớn.
1999 SQL:1999 SQL3
2003 SQL:2003
9. Nguyễn Mai Huy – Master of Information technology
Data Definition Language – DDL (is used to define data structures stored in
the database. DDL statements allow to create, modify or destroy individual database objects.
Object types allowed depend on the DBMS used, and usually include databases, users, tables
and some smaller housekeeping objects like roles and indexes.)
Data Manipulation Language – DML ( is used to query and change data
stored in the database. DML statements allow to select, insert, update and delete data in the
tables. Sometimes pure select statements are not classified as part of DML, since they don’t
change the state of the data. All SQL DML statements are declarative.)
(CRUD: Create – Retrieve – Update – Delete)
Create – insert
Retrieve – Read: select
Update – Modify: update
Delete – Destroy: delete
Types of sub-language in SQL
10. Nguyễn Mai Huy – Master of Information technology
Data Control Language – DCL ( is used to control access to data stored in the
database. DCL statements operate with privileges and allow to grant and revoke privileges on
applying certain DDL and DML commands to certain database objects.)
Transaction Control Language – TCL (is used to control processing of
transactions in the database. Usual TCL statements are commit to apply the changes
introduced by the transaction, rollback to undo them and savepoint to divide the transaction
into several smaller parts.)
Types of sub-language in SQL
DDL DML
TCL DCL
SQL
11. Nguyễn Mai Huy – Master of Information technology
Database Management System – DBMS : là “một dạng phần
mềm” cung cấp các chức năng cho phép các phần mềm (software),
cũng như người dùng (end-user) có thể thực hiện các hành động
tương tác với cơ sở dữ liệu đã được xây dựng bên trong nó: Tạo mới,
Lưu trữ, Chỉnh sửa, Xóa bỏ, Truy vấn và Phân tích dữ liệu …
Thông thường, hệ quản trị cơ sở dữ liệu sẽ tự động giúp người dùng
kiểm soát thông tin và duy trì các CSDL. Các thành phần chính của
một DBMS thường bao gồm:
Bộ xử lý truy vấn (Query processor)
Bộ quản lí dữ liệu (Data management)
DBMS – Hệ quản trị CSDL
12. Nguyễn Mai Huy – Master of Information technology
Cung cấp môi trường tạo, định nghĩa cơ sở dữ liệu
(Ngôn ngữ định nghĩa dữ liệu)
Cung cấp các tính năng cập nhật và khai thác dữ liệu
(Ngôn ngữ thao tác dữ liệu)
Cho phép kiểm soát, điều khiển truy cập vào CSDL
(Ngôn ngữ kiểm soát dữ liệu)
Nhiệm vụ chính của DBMS
13. Nguyễn Mai Huy – Master of Information technology
Sơ đồ hệ thống DBMS
14. Nguyễn Mai Huy – Master of Information technology
dBASE
FoxPro
Microsoft Access
MySQL
Microsoft SQL Server
SQLite
IBM DB2
Oracle
PostgreSQL
. . .
Một số DBMS phổ biến
16. Nguyễn Mai Huy – Master of Information technology
Transact-SQL (T-SQL) là một mở rộng độc quyền của Microsoft và Sybase
cho SQL dùng để tương tác với cơ sở dữ liệu quan hệ. T-SQL mở rộng dựa
trên SQL để cho phép lập trình thủ tục, khai báo và sử dụng các biến cục
bộ, các hàm hỗ trợ khác nhau cho xử lý chuỗi, xử lý ngày, toán học, …
đồng thời thay đổi các lệnh DELETE và UPDATE.
Transact-SQL là ngôn ngữ lập trình quan trọng trong việc khai thác và sử
dụng Microsoft SQL Server. Tất cả các ứng dụng giao tiếp với SQL Server
đều thực hiện gửi các câu lệnh Transact-SQL dưới dạng TEXT đến máy
chủ cơ sở dữ liệu, và nhận về kết quả thực thi trên CSDL mà không hề phụ
thuộc vào giao diện người dùng của ứng dụng.
T-SQL
17. Nguyễn Mai Huy – Master of Information technology
Có 3 điểm khác biệt chính giữa SQL và T-SQL
SQL là 1 ngôn ngữ lập trình, còn T-SQL là một mở rộng
của SQL.
T-SQL cho phép “lập trình hướng thủ tục” với các biến cục
bộ, còn SQL thì không.
T-SQL là độc quyền, còn SQL là một “định dạng mở”.
SQL vs T-SQL
18. Nguyễn Mai Huy – Master of Information technology
Microsoft SQL Server là một hệ thống quản lý cơ sở dữ liệu quan hệ được phát
triển bởi Microsoft. SQL Server hoạt động như một máy chủ cơ sở dữ liệu, đây
là một sản phẩm phần mềm có chức năng chính là lưu trữ và truy xuất dữ liệu
theo yêu cầu của các ứng dụng phần mềm khác, có thể chạy trên cùng một máy
tính hay trên một máy tính khác đồng thời cho phép kết nối thông qua mạng máy
tính (bao gồm cả Internet).
Microsoft cung cấp nhiều phiên bản Microsoft SQL Server, nhắm vào các đối
tượng khác nhau, cho các khối lượng công việc khác nhau. Từ các ứng dụng đơn
lẻ, khối lượng công việc nhỏ, cho đến các ứng dụng lớn với nhiều người dùng
đồng thời truy cập thông qua Internet.
What is SQL Server?
19. Nguyễn Mai Huy – Master of Information technology
MS SQL Server for OS/2 : 1989, by Sybase, Ashton-Tate, and Microsoft.
SQL Server 4.2 for NT : 1993.
SQL Server 6.0 : 1995 (Microsoft kết thúc quá trình hợp tác với Sybase, lúc này Sybase
tiếp tục phát triển một biến thể khác Sybase Adaptive Server Enterprise, độc lập với Microsoft).
SQL Server 7.0 : 1998.
SQL Server 2005, (hoàn tất việc chuyển đổi mã cũ do Sybase phát triển sang Microsoft).
SQL Server 2017, (bổ sung các hỗ trợ cho nền tảng Linux)
Phên bản & các mốc quan trọng
20. Nguyễn Mai Huy – Master of Information technology
Database Engine – Thành phần chính, có nhiệm vụ lưu trữ, xử lý các giao
dịch với tốc độ nhan và giữ nhiệm vụ bảo mật đối với cơ sở dữ liệu.
SQL Server – Đây là dịch vụ dùng để: Khởi động, Dừng, Tạm ngưng hay tiếp
tục thi hành đối với các “thực thể” SQL Server.
SQL Server Agent – Dịch vụ này sẽ thực thi các nhiệm vụ ( role) theo lịch
trình, hoặc tự động thực thi các nhiệm vụ dựa trên các sự kiện cũng như các yêu
cầu từ bên ngoài.
SQL Server Browser – Dịch vụ này thường được dùng để kết nối các yêu
cầu được gửi đến từ bên ngoài với SQL Server instance mong muốn.
SQL Server Full-Text Search – Được sử dụng để cho phép người dùng
chạy các truy vấn ở dạng Full-Text đối với dữ liệu character trong các bảng SQL.
The key components
21. Nguyễn Mai Huy – Master of Information technology
SQL Server VSS Writer – Cho phép sao lưu và phục hồi các tập tin dữ liệu
khi SQL Server không hoạt động.
SQL Server Analysis Services (SSAS) – Dịch vụ này được sử dụng để
cung cấp các phân tích, khai thác dữ liệu và khả năng học máy. Máy chủ SQL cũng
được tích hợp với Python và R để phân tích dữ liệu nâng cao.
SQL Server Reporting Services (SSRS) – Dịch vụ này được sử dụng
để cung cấp các tính năng và khả năng ra quyết định bao gồm cả việc tích hợp với
Hadoop.
SQL Server Integration Services (SSIS) – Dịch vụ này được sử dụng
để thực hiện các lệnh ETL (Extract, Transform, and Load process) cho các loại dữ
liệu khác nhau tập hợp từ nhiều nguồn.
The key components
22. Nguyễn Mai Huy – Master of Information technology
SQL Server Architecture
23. Nguyễn Mai Huy – Master of Information technology
SQL Server Architecture
Relational Engine − Contains the query parser, optimizer, and the executor;
and the execution happens in the relational engine.
Command Parser − Checks the syntax of the query and converts the query to
machine language.
Optimizer − Prepares the execution plan as output by taking statistics, query and
Algebrator tree as input.
Query Executor − This is the place where queries get executed step by step
Storage Engine − This is responsible for storage and retrieval of data on the storage
system, manipulation of data, managing and locking transactions.
25. Nguyễn Mai Huy – Master of Information technology
SSMS from the start menu
26. Nguyễn Mai Huy – Master of Information technology
When you open the SQL server management studio from
the start menu, a window will open similar to the window shown
in the picture below.
Accessing Database Engine
27. Nguyễn Mai Huy – Master of Information technology
Here, mention the Server Name, Authentication Mode and click
on Connect. After you click on Connect, you will see the
following screen at the next slide.
Authentication Mode:
• Windows authentication
• SQL Server authentication
Authentication Mode
28. Nguyễn Mai Huy – Master of Information technology
Windows authentication
29. Nguyễn Mai Huy – Master of Information technology
Windows authentication
30. Nguyễn Mai Huy – Master of Information technology
SQL Server authentication
Choose server name
Select Authentication as SQL Server authentication
Login with: sa account
Password : you have entered in the installation before
31. Nguyễn Mai Huy – Master of Information technology
SQL Server authentication
32. Nguyễn Mai Huy – Master of Information technology
Ngôn ngữ truy vấn dữ liệu có cấu trúc : SQL
SQL & Transact SQL
Các nhóm lệnh đặc trưng của T-SQL
Microsoft SQL Server Management Studio (SSMS)
Các hình thức truy cập vào SQL Server
Hệ quản trị cơ sở dữ liệu :: DBMS
Mô hình truy xuất dữ liệu trên hệ thống DBMS
Nhớ gì ?!!!
33. Nguyễn Mai Huy – Master of Information technology
Itzik Ben-Gan, “Microsoft® SQL Server ® 2012 T-SQL Fundamentals”,
O’Reilly Media Inc, 2012
Itzik Ben-Gan, Dejan Sarka, Ed Katibah, Greg Low, Roger Wolter, and Isaac
Kunen, “Inside Microsoft SQL Server 2008: T-SQL Programming”,
Microsoft Press, 2010
w3schools, “Introduction to SQL”,
https://www.w3schools.com/sql/sql_intro.asp, 10:54PM, 18/06/2020
Microsoft SQL Server Tutorial, “Tutorials for SQL Server”,
https://docs.microsoft.com/en-us/sql/sql-server/tutorials-for-sql-server-2016,
10:54 PM, 18/06/2020
Tài liệu tham khảo