Chào mừng đến với site của Bee! Chúc các bạn có những giây phút thực sự vui vẻ!!!

Thứ Hai, 3 tháng 12, 2012

Tổng đài IP PBX


Tổng đài IP PBX là gì ?

Mô tả
Tổng đài điện thoại nội bộ dùng giao thức Internet hay qua truyền qua nền tảng IP gọi là Tổng đài IP-PBX (tiếng Anh: Internet Protocol Private Branch eXchange, viết tắt là IP PBX hay IP-BX) là một mạng điện thoại riêng dùng giao thức Internet (Internet protocol) để thực hiện các cuộc gọi điện thoại ra bên ngoài, thường áp dụng trong phạm vi một công ty, nhà hàng, trường học, bệnh viện, doanh nghiệp hay kết nối đa chi nhánh. Dữ liệu thoại được truyền bằng các gói dữ liệu qua IP hay LAN/WAN/Internet thay vì mạng điện thoại (cáp, line) thông thường.
Trong bất kì doanh nghiệp nào, khi tham gia hoạt động kinh doanh luôn luôn hiện diện của một tổng đài thoại để liên lạc với khách hàng, đối tác và các bạn hàng khác. Xu hướng hiện nay, Tổng đài điện thoại IP-PBX là một thành phần trong giải pháp/hệ thống IP Telephony, IP-Centrex. Để triển khai IP Telephony bạn cần có tổng đài IP, điện thoại analog/IP, điện thoại softphone, Voice Gateway các loại, đường truyền (leased line, internet, LAN, WAN,…). Một số tính năng được tích hợp trên tổng đài IP hoặc có thể nằm trên các server khác nhau. Ví dụ một tổng đài IP có thể bao gồm SIP/H323 server, SIP/H323 proxy, IVR server, Recording server, Gateway.
Cấu hình của tổng đài
Tổng đài IP-PBX chia làm 02 nhóm: nhóm tổng đài đóng gói theo một số phần cứng quy định và thường có license kèm theo. Các loại tổng đài này do các hãng lớn cung cấp như Avaya, Siemens, Alcatel-Lucent, Cisco, Panasonic, Ericson, Nortel, LG, …. Loại phổ biến thứ hai theo xu hướng công nghệ mã nguồn mở vận hành dựa trên các tổng đài IP dạng softswitch – phần mềm được cài đặt lên Server PC/Server Destop, sử dụng các card Asterisk hoặc Voice Gateway để kết nối với PSTN qua các port FXO/FXS, E1/T1/J1, BRI, …đầu cuối sử dụng là các điện thoại Analog/IP, phần mềm softphone (phần mềm gọi điện thoại qua máy tính).
Các tính năng của tổng đài IP-PBX
Kết nối các cuộc gọi nội bộ và mạng điện thoại cố định
- Máy tính tới máy tính (Computer to computer, PC to PC): Đây là cách dễ nhất để ứng dụng VoIP, bạn sẽ không cần trả tiền cho các cuộc gọi đường dài, chỉ cần một phần mềm (soft phone), Microphone, Speaker, Sound Card và một kết nối Internet.
- Máy tính tới điện thoại (Computer to Telephone, PC to Phone): Phương pháp cho phép bạn gọi tới bất kỳ ai (người có điện thoại) từ máy tính của bạn.
- Điện thoại tới máy tính (Telephone to Computer, Phone to PC): Với số điện thoại đặc biệt hoặc Card, người sử dụng máy điện thoại thông thường có thể thực hiện cuộc gọi tới người sử dụng máy tính có cài đặt phần mềm và đang chạy trên mạng.
- Điện thoại tới điện thoại (Telephone to telephone, phone to phone):Qua việc sử dụng các IP Gateway, bạn có thể kết nối trực tiếp với bất cứ người nào khác trên thế giới sử dụng điện thoại thông thường. Bạn cần gọi vào trong IP Gateway của họ sau đó bấm số cần gọi họ kết nối qua mạng IP.
Đàm thoại nhiều người – Conference call
Conference call (đàm thoại hội nghị)- Đàm thoại nhiều người được thiết lập cho phép người nhận cuộc gọi tham gia đàm thoại xuyên suốt cuộc gọi đó hoặc có thể được thiết lập để người nhận cuộc gọi chỉ được phép nghe mà không được nói. Có thể cho phép gọi, thêm người khác vào. Giảm bớt thời gian khi muốn truyền đạt cùng một nội dung tới nhiều người.
Các dịch vụ tự động
- Call Forwarding (Chuyển tiếp cuộc gọi): Đây là chức năng cho phép chủ thuê bao chuyển cuộc gọi đến một Extension bất kỳ đã được định trước(trong nội bộ tổng đài)hay 1 số điện thoại di động…khi chủ thuê bao đang bận hoặc không muốn nghe
- Cance Call Forwarding: Bỏ chức năng Call Forwarding
- Tranfer: Khi có một cuộc gọi đến một trung tâm hay một công ty gặp điện thoại viên thì người điện thoại viên sẽ chuyển cuộc gọi đến một số Extension của người bạn muốn gặp bằng cách ấn số Extension.
Ví dụ: Khi có số điện thoại A: 0912345678 gọi đến số 04.3123456 của 1 công ty gặp điện thoại viên B:
A: Cho tôi gặp Anh C B: Đồng ý (người điện thoại viên sẽ bấm số Extension của Anh C để A có thể nói chuyện với C)
Pickup: là chức năng cho phép mọi người có thể nhấc máy của ngươi khác khi máy của họ đổ chuông. Pick up có 2 loại: Pickup trực tiếp và Pickup theo nhóm.
- Pickup trực tiếp: Chỉ có 1 cặp Extension có thể nhấc máy của nhau
- Pickup theo nhóm: Thường thì áp dụng với một nhóm người trong cùng 1 phòng ban, bất kỳ người nào cũng có thể nhấc máy được khi điện thoại của người khác đổ chuông.
- Auto-Attendant (IVR) – Tương tác thoại: Có thể nói đây là tính năng hoạt động như 1 ngươi điện thoại viên nhưng với những Voice Guide đã được lập trình từ trước nhằm hướng dẫn chi tiết cho người gọi điện tới công ty hay trụ sở…ví dụ “chào mừng quý khách đã gọi điện đến công ty..ấn nút 1 để gặp…”
- Phân phối cuộc gọi tự động ACD – Automated Call Distribution: Hệ thống sẽ tự động phân phối cuộc gọi phù hợp với tương tác của người dùng đối với hệ thống.
- Call Park: Cho phép chuyển cuộc gọi đang trả lời vào trong Park Place đến một thành viên khác trong cùng hệ thống.
- Voice mail: Tính năng cho phép hệ thống nhận các thông điệp tin nhắn thoại. Mỗi máy điện thoại được cung cấp thêm tính năng hộp thư thoại. Mỗi khi số điện thoại bận thì hệ thống sẽ định hướng trực tiếp các cuộc gọi đến hộp thư thoại tương ứng.
- Voicemail transfer: Tính năng cho phép bạn chuyển cuộc gọi vào hộp thư thoại khi bạn không rảnh để nghe.
- Voicemail dial: Nếu bạn không muốn điện thoại của người nhận đổ chuông (tránh làm phiền không cần thiết), bạn có thể nói trực tiếp vào Voice mail của người nhận. Người nhận sau đó sẽ nghe lại thông tin của bạn từ Voice mail.
- User permission to long/international call: Bạn có thể cấp quyền bằng mật mã hoặc theo số nội bộ.
Lợi ích của Tổng đài IP-PBX so với Tổng đài truyền thống PBX
- Chi phí thấp: Không mất phí gọi liên tỉnh, quốc tế khi gọi.
- Dễ cài đặt và thiết lập cấu hình:
- Tận dụng được hạ tầng sẵn có (Internet, mạng LAN,…).
- Dễ dàng mở rộng mà không cần nâng cấp phần cứng hoặc đổi mới tổng đài.
- Chuyển tiếp vùng dễ dàng.
- Không bị giới hạn số lượng máy điện thoại do dùng điện thoại IP (SIP).
- Dễ dàng theo dõi, quản lý hệ thống thông qua trang Web quản trị.
- Tiết kiệm nhân lực trực tổng đài: Nhờ cơ chế tự động: Trả lời tự động (IVR), Phân phối cuộc gọi tự động (ACD), Voice mail..
Tổng đài PBXTổng đài IP-PBX
Chi phí đầu tư/triển khai/bảo trìChi phí đầu tư ban đầu : thấp
Chi phí triển khai: cao
Chi phí bảo trì: cao
Chi phí đầu tư ban đầu: trung bình
Chi phí triển khai: trung bình
Chi phí bảo trì: thấp
Khả nâng nâng cấp và mở rộng nội bộBị hạn chế và tùy thuộc khả năng đầu tư ban đầu của tổng đài (bị cố định số lượng người dùng)
Chi phí phát sinh từ hạ tầng, nâng cấp thiết bị : rất cao
Không giới hạn số lượng người dùng khi nâng cấp
Bổ sung tích hợp thêm thiết bị dễ dàng và nhanh chóng
Chi phí phát sinh từ hạ tầng, thiết bị: thấp
Khả nâng nâng cấp và mở rộng đa chi nhánhBị hạn chế và tốn kém chi phí
Hoặc không thể kết nối đối với chi nhánh quá xa
Hoặc phải mượn dịch vụ trung gian của các Nhà cung cấp Dịch vụ ISP
Không hạn chế kết nối đa site
Kết nối dễ dàng và tận dụng liên thông thoại đa chi nhánh, giảm chi phí dịch vụ thuê ngoài
Khả năng tương tác với hệ thống khácChi phí phải đầu tư thiết bị mới rất cao
Hoặc phải mua các thiết bị chuyên biệt dành riêng cho từng hệ thống
Tương tác dễ dàng qua chuẩn SIP và các giao thức hỗ trợ qua IP như VoIP, thoại truyền hình hội nghị, Truyền thông đa hợp nhất (UC), Microsoft OCS/Lync/Exchange
Khả năng tận dụng tổng đài truyền thống kết nối với tổng đài IP-PBX
Tuy nhiên, khả năng tận dụng lại các tổng đài PBX truyền thống và xem như 01 nhóm Extension của tổng đài IP-PBX mới là bình thường và tương tác dễ dàng với hệ thống truyền thông khác qua tổng đài IP-PBX. Do đó, giúp doanh nghiệp tận dụng được hiệu năng chi phí bỏ ra đầu tư ban đầu và sử dụng hết công suất trước khi hoàn toàn chuyển sang hoàn thiện hệ thống IP-Centrex để bắt kịp với công nghệ thời đại và tận dụng các dịch vụ tiện ích mà hệ thống tổng đài PBX thông thường không thể có được nhằm nâng cao hiệu suất và khả năng khai thác triệt để các dịch vụ/ứng dụng sẳn có cho kinh doanh của doanh nghiệp
- Máy tính tới máy tính (Computer to computer, PC to PC): Đây là cách dễ nhất để ứng dụng VoIP, bạn sẽ không cần trả tiền cho các cuộc gọi đường dài, chỉ cần một phần mềm (soft phone), Microphone, Speaker, Sound Card và một kết nối Internet.
- Máy tính tới điện thoại (Computer to Telephone, PC to Phone): Phương pháp cho phép bạn gọi tới bất kỳ ai (người có điện thoại) từ máy tính của bạn.
- Điện thoại tới máy tính (Telephone to Computer, Phone to PC): Với số điện thoại đặc biệt hoặc Card, người sử dụng máy điện thoại thông thường có thể thực hiện cuộc gọi tới người sử dụng máy tính có cài đặt phần mềm và đang chạy trên mạng
- Điện thoại tới điện thoại (Telephone to telephone, phone to phone):Qua việc sử dụng các IP Gateway, bạn có thể kết nối trực tiếp với bất cứ người nào khác trên thế giới sử dụng điện thoại thông thường. Bạn cần gọi vào trong IP Gateway của họ sau đó bấm số cần gọi họ kết nối qua mạng IP.

Các sản phẩm dịch vụ máy chủ VDO cung cấp và thông tin liên hệ
-       VDO là nhà cung cấp dịch vụ máy chủ lớn nhất tại Việt Nam, VDO đang quản lý một hệ thống bao gồm nhiều máy chủ hosting cỡ lớn và cung cấp tất cả các dịch vụ, sản phẩm về máy chủ:
Dịch vụ VDO cung cấp
-          Dịch vụ cho thuê chỗ đặt máy chủ – Colocation Server;
-          Dịch vụ cho thuê máy chủ dùng riêng – Dedicated Server;
-          Dịch vụ cho thuê máy chủ VPS – VPS Server;
-          Dịch vụ cho thuê tủ Rack;
-          Dịch vụ cho thuê trung tâm dữ liệu – Cho thuê Data center
-          Dịch vụ cài đặt máy chủ và cấu hình máy chủ – Server Installation and Configuration;
-          Dịch vụ quản lý máy chủ – Services Managed Server
Sản phẩm VDO cung cấp
-          Phân phối máy chủ đồng bộ: Supermicro, IBM, Dell, HP, Cisco, SUN;
-          Cung cấp linh phụ kiện máy chủ: Ram, HDD, CPU, Mainboard, Chassis;
-          Cung cấp thiết bị lưu trữ chuyên dụng: (Storage NAS) Qnap, Promise,…
-          Cung cấp máy trạm ( Workstation ): HP, DELL
-          Phân phối phần mềm bản quyền: VMware, cPanel, DirectAdmin,…
-          Phân phối các thiết bị mạng, thiết bị security, load balancing,…
Nguồn: internet

Một số câu lệnh trong SQL



1) Trên cơ sở dữ liệu (database)
Các phiên bản của SQL Server: Enterprise, Personal, Desktop, Developer,..
Các bộ phận của SQL Server: Enterprise Manager, Query Analyzer, Books Online,..
Các loại tập tin của SQL Server: data file (primary, secondary), log file
Các loại cơ sở dữ liệu của SQL Server: system database, user database 
create database: tạo cơ sở dữ liệu
create database HoSoSinhVien

create database HoSoSinhVien
on (name=’HSSV_data’, filename=’c:\HSSV_data.mdf’)
log on (name=’HSSV_log’, filename=’c:\HSSV_log.ldf’)
drop database: xóa cơ sở dữ liệu
drop database HoSoSinhVien
alter database: sửa các thông tin của cơ sở dữ liệu
alter database HoSoSinhVien
modify name = HSSV
exec sp_dboption: sửa các thông tin của cơ sở dữ liệu
exec sp_dboption HoSoSinhVien, ‘read only’, ‘true’
exec sp_dboption HoSoSinhVien, ‘autoshrink’, ‘true’
exec sp_dboption HoSoSinhVien, ‘single_user’
dbcc: điều khiển cơ sở dữ liệu
dbcc shrinkdatabase(HoSoSinhVien, 10)

2) Trên bảng (table)
Nhớ các kiểu số liệu: text, binary, numberic, money, datetime, bit, variant
Nhớ các các ràng buộc: default, check, unique, foreign, primary
Nhớ các kiểu toàn vẹn: entity, domain, referential, user 
Nhớ các thuộc tính bổ trợ: identity, null 
create table: tạo bảng
Tạo bảng với các cột
create table SinhVien (
MaSV int,
TenSV nchar(50) 
)

Tạo với các ràng buộc
create table SinhVien (
MaSV int primary key,
TenSV nvarchar(50) not null,
QueQuan int references DiaPhuong(MaDP)
)

drop table: xóa bảng
drop table SinhVien
alter table..add: thêm cột
Thêm cột bằng cách dùng lệnh alter table 
alter table SinhVien
add QueQuan int

alter table..drop column: xóa cột
alter table SinhVien
drop column QueQuan

alter table..alter column: thêm thuộc tính not null
alter table SinhVien
alter column TenSV nchar(50) not null

alter table..add primary key: thêm khóa chính
Thêm ràng buộc khóa chính cần phải biến một cột null thành not null trước khi thêm. Nếu để lệnh chuyển đổi thuộc tính not null ngay cạnh lệnh thêm khóa chính thì phải chèn từ khóa go vào vì có thể lệnh trên chưa được thực hiện do đó lệnh dưới báo lỗi 
alter table SinhVien
alter column MaSV int not null 
go

alter table SinhVien
add primary key (MaSV)

alter table..add foreign key: thêm ràng buộc khóa ngoài
alter table SinhVien
add foreign key (QueQuan) references DiaPhuong(MaDP)

alter table..add default: thêm ràng buộc mặc định
alter table SinhVien
add default 'khong ten' for TenSV

exec sp_help: xem thông tin bảng
exec sp_help SinhVien

3) Trên bản ghi (record)
Nhớ thêm phần biểu thức điều kiện
Nhớ thêm phần ký tự thay thế
insert..values: thêm các bản ghi vào bảng
insert into SinhVien (MaSV, TenSV, QueQuan) 
values (1, N’Nguyễn Văn A’, 1)

insert..select: thêm các bản ghi từ bảng khác vào bảng
insert into DocGia 
select MaSV, TenSV, QueQuan from SinhVien 
insert into DocGia 
select MaGV, TenGV, QueQuan from GiaoVien
select..into: đưa kết quả lựa chọn vào bảng mới
select MaSV, TenSV, Diem
into SinhVienKha
from SinhVien
where Diem > 7.0

delete: xóa các bản ghi từ bảng
delete from SinhVien
delete from SinhVien where MaSV=1234

truncate: xóa toàn bộ bản ghi của bảng
truncate table SinhVien
update: sửa các bản ghi trong bảng
update SinhVien
set NhomTruong = 1 
where MaSV < 4
update SinhVien
set NhomTruong = 4 
where (MaSV > 3 and MaSV < 8)
4) Truy vấn (query)
Hỗ trợ truy vấn: distinct, top, as, identity
Phép toán tập hợp: in, like, between
Các hàm tổng nhóm: sum, max, min, avg
4.1) Truy vấn đơn giản
select *: Hiện tất cả bảng
select * 
from SinhVien

select: Hiện một số cột
select TenSV, DiemTB
from SinhVien

select..where: Hiện một số dòng / bản ghi
select TenSV, DiemTB
from SinhVien
where DiemTB > 6.0

select..order by: Hiện và sắp xếp theo điểm rồi theo tên
select TenSV, DiemTB
from SinhVien
order by DiemTB desc, TenSV asc

select..distinct: Hiện danh sách giá trị không trùng lặp
select distinct QueQuan
from SinhVien
select..top: Hiện các dòng đầu tiên trong bảng
select top 3 TenSV, DiemTB
from SinhVien
order by DiemTB desc, TenSV asc

4.2) Truy vấn lồng nhau (nested query)
select..where (select)
Hiện tất cả những người trong bảng nhân viên có lương bằng lương lớn nhất của những người có trong công ty:
select TenNV, Luong
from NhanVien
where Luong = (select max(Luong) from NhanVien)
select..where (in)
Hiện tất cả những người trong bảng nhân viên có lương lớn nhất hoặc lớn nhì của những người có trong công ty:. 
select TenNV, Luong
from NhanVien
where Luong in (select top 2 Luong from NhanVien order by Luong)
Câu lệnh select trong sẽ tạo ra một tập hai giá trị (top 2) đó là lương lớn nhất và lương lớn nhì. Và câu lệnh select thứ nhất sẽ chọn ra những người mà lương nằm trong tập lớn nhất và lớn nhì
select..where (in sub)
Hiện ra tất cả những người có lương lớn nhất phòng của anh ta (không phải lớn nhất trong công ty mà lớn nhất trong phòng hoặc đơn vị mà anh ta thuộc về)
select nv1.TenNV, nv1.Luong
from NhanVien as nv1
where nv1.Luong = (select max(Luong) from NhanVien where Phong=nv1.Phong)
Câu lệnh select trong sẽ trả về giá trị lương lớn nhất nhưng không phải lớn nhất trong toàn công ty mà lớn nhất trong phòng của nv1. Sau đó câu lệnh select ngoài cùng sẽ xác định xem nv1 có được chọn không bằng cách kiểm tra lương anh ta với lương lớn nhất của phòng anh ta.
4.3) Truy vấn tổng nhóm (subtotal query / grouping query)
select..group by: Thống kê theo tiêu chí
Hiện ra số lượng các nhân viên ứng với từng quê
select QueQuan, count(*)
from NhanVien
group by QueQuan

Đếm số nam và số nữ trong công ty
select GioiTinh, count(*)
from NhanVien
group by GioiTinh

Tính tổng thu nhập theo từng phòng
select Phong, sum(Luong)
from NhanVien
group by Phong
select..having: Hiện ra một số nhóm phù hợp
Chỉ đếm số lượng người ở Hải Phòng và số lượng người ở Hà nội
select QueQuan, count(*)
from NhanVien
group by QueQuan
having (QueQuan = ‘HP’, QueQuan = ‘HN’)

Chỉ hiện ra những phòng nào có tổng thu nhập lớn hơn 500000
select Phong, sum(Luong)
from NhanVien
group by Phong
having sum(Luong) > 5000000

Chỉ hiện ra những tỉnh nào có số lượng người lớn hơn 10
select QueQuan, count(*)
from NhanVien
group by QueQuan
having count(*) > 10

4.4) Truy vấn liên bảng (cross table query / joining query)
select..inner join: ghép các cặp bản ghi thỏa mãn điều kiện 
Ghép bảng nhân viên và hiện ra tên nhân viên và tên địa phương
select NhanVien.TenNV, DiaPhuong.TenDP
from NhanVien inner join DiaPhuong on NhanVien.QueQuan = DiaPhuong.MaDP
select..left outer join: lấy tất cả phía trái và ghép (nếu có) với phải
Lấy tất cả những nhân viên kể cả những nhân viên có quê quán không hợp lệ (nghĩa là mã quê quán không có trong bảng địa phương)
select NhanVien.TenNV, DiaPhuong.TenDP
from NhanVien left outer join DiaPhuong on NhanVien.QueQuan = DiaPhuong.MaDP

select..right outer join: lấy tất cả phía phải và ghép (nếu có) với phía trái
Lấy tất cả những địa phương ghép với nhân viên, các địa phương không hợp lệ sẽ được ghép với bộ dữ liệu rỗng. Không hiện ra các nhân viên không có mã quê quán phù hợp
select NhanVien.TenNV, DiaPhuong.TenDP
from NhanVien right outer join DiaPhuong on NhanVien.QueQuan = DiaPhuong.MaDP

select..full outer join: lấy từ hai phía và ghép nếu có
Lấy tất cả những nhân viên (nếu không có quê quán phù hợp thì ghép với bộ dữ liệu rỗng) và tất cả những địa phương kể cả không có nhân viên.
select NhanVien.TenNV, DiaPhuong.TenDP
from NhanVien right outer join DiaPhuong on NhanVien.QueQuan = DiaPhuong.MaDP
select..cross join: trả về tất cả các cặp có thể ghép
Ghép từng nhân viên với tất cả các địa phương. Như vậy nếu có m nhân viên và có n địa phương thì bảng đích sẽ có m*n dòng. n dòng đầu cho nhân viên thứ nhất ghép với các địa phương. n dòng sau cho nhân viên thứ hai ghép với các địa phương. và tiếp tục như thế tới nhân viên thứ m.
select NhanVien.TenNV, DiaPhuong.TenDP
from NhanVien cross join DiaPhuong
ref: Tham khảo thêm một số lệnh
Xem tất cả các CƠ SỞ DỮ LIỆU người dùng trong MÁY CHỦ
Mỗi khi một cơ sở dữ liệu được tạo ra, bảng sysdatabase trong cơ sở dữ liệu master sẽ chứa thông tin về bảng mới tạo ra đó. Do vậy chúng ta có thể liệt kê tất cả các cơ sở dữ liệu trong một máy chủ bằng cách liệt kê các bản ghi trong bảng sysdatabase
select * 
from master.dbo.sysdatabases
where sid <> 1

Xem tất cả các BẢNG người dùng trong CƠ SỞ DỮ LIỆU
Mỗi khi một bảng được tạo ra trong một cơ sở dữ liệu, thông tin về bảng đó sẽ được chứa trong bảng sysobjects của chính cơ sở dữ liệu chứa bảng vừa tạo. Vì vậy chúng ta có thể xem danh sách các bảng trong cơ sở dữ liệu bằng cách truy vấn bảng sysobjects. Các bảng do người dùng tạo có kiểu là ‘U’
select *
from Northwind.dbo.sysobjects
where xtype='U'
Trong ví dụ này, chúng ta lấy tất cả các bản ghi bảng sysobjects của cơ sở dữ liệu Northwind nhưng chỉ lấy những bảng người dùng, nghĩa là những bảng có xtype là ‘U’ 
Xem tất cả các CỘT thuộc về một BẢNG
Mỗi khi một cột trong bảng được tạo, bảng syscolumns trong cơ sở dữ liệu sẽ chứa thông tin về cột vừa tạo. Thuộc tính id của cột sẽ chứa định danh của bảng mà cột đó thuộc về. Vì vậy để xem các cột trong một bảng dữ liệu, chúng ta có thể truy vấn bảng syscolumns
declare @x int
set @x = (select id from sysobjects where name='Employees') 
select * from syscolumns where id = @x
Trong ví dụ này, ta khai báo biến @x kiểu int, sau đó lấy id của bảng Employees vào biến @x, rồi ta lấy tất cả các cột trong bảng syscolumns mà có id bằng @x, cũng có nghĩa là id của bảng Employees. Do vậy ta sẽ liệt kê được tất cả các cột trong bảng Employees
Sử dụng bảng tạm
Khai báo bảng, cập nhật bảng, và hiện bảng
declare @x table(MaSV int, TenSV nvarchar(20))

insert into @x values(1, N'Thưởng')
insert into @x values(2, N'Yến')

select * from @x

Khai báo bảng, tải bảng khác từ trong cơ sở dữ liệu lên bảng vừa khai báo, và hiện bảng
declare @x table(MaSV int, TenSV nvarchar(20))

insert into @x 
select EmployeeID, firstname 
from Northwind.dbo.Employees

select * from @x
Sử dụng biến tạm
declare @t money
set @t = (select max(UnitPrice) from Northwind.dbo.products)
select * from Northwind.dbo.products where UnitPrice >= @t
ref: Các khái niệm cơ bản của cơ sở dữ liệu
Các mô hình dữ liệu (data model)
+ Mô hình thứ bậc (hierarchical)
+ Mô hình mạng lưới (network)
+ Mô hình quan hệ (relational)
Các vấn đề của lưu trữ
+ Sự dư thừa (redundance)
+ Sự nhất quán (consistence)
+ Tính toàn vẹn (integrity)
+ Sự an toàn (security)
+ Sự chia sẻ (sharing)
Các khái niệm cơ bản 
+ Cơ sở dữ liệu (database)
+ Bảng (table) hoặc quan hệ (relation)
+ Bản ghi (record) hoặc dòng (row) hoặc bộ (tuple)
+ Trường (field) hoặc cột (column)
+ Mối quan hệ (relationship) được biểu hiện bằng bảng (table) hoặc khóa (key) 
Mối quan hệ giữa các 
+ Tại sao phải lưu mối quan hệ
+ Phương pháp lưu các mối quan hệ (dùng khóa, dùng bảng)
+ Khóa chính (primary key) và khóa ngoài (foreign key)
+ Vấn đề toàn vẹn tham chiếu (referential integrity)
Ngôn ngữ định nghĩa và xử lý dữ liệu
+ Thao tác trên các đối tượng như cơ sở dữ liệu, bảng, cột
+ Phần định nghĩa cơ sở dữ liệu và bảng: create, drop, alter
+ Phần cập nhật dữ liệu: insert, delete, update
+ Phần truy vấn dữ liệu: join, union, projection, selection, sort, group
+ Phần lập trình và thao tác: declare, set, use, go
ref: Liên quan tới định nghĩa bảng
Các vấn đề về toàn vẹn dữ liệu
+ Toàn vẹn thực thể (entity integrity): primary key, unique, identity
+ Toàn vẹn tham chiếu (referential integrity): foreign key, check 
+ Toàn vẹn miền dữ liệu (domain integrity): default, foreign key, check, not null 
+ Toàn vẹn người dùng (user integrity): rules, stored procedures, triggers
Các hỗ trợ với toàn vẹn
+ Ràng buộc kiểm tra (check constraint): phải thỏa mãn điều kiện nào đó
+ Ràng buộc mặc định (default constraint): phải có một giá trị mặc định
+ Ràng buộc duy nhất (unique constraint): các giá trị trong cột không được trùng lặp

+ Ràng buộc khóa ngoài (foreign key constraint): các giá trị phải hợp lệ với cột khóa chính tương ứng
+ Ràng buộc khóa chính (primary key constraint): phải duy nhất và không trống

+ Thuộc tính định danh (identity property): có thể được tăng tự động
+ Thuộc tính không trống (not null property): không được phép để trống
Các kiểu dữ liệu
Giá trị nhị phân: bit
Các số nguyên: bigint, int, smallint, tinyint
Các số thực xấp xỉ: float, real

Giá trị số thực chính xác: decimal, numberic
Giá trị tiền tệ: money, smallmoney
Giá trị hời gian: datetime, smalldatetime

Các chuỗi: char, varchar, text, nchar, nvarchar, ntext,
Các chuỗi nhị phân: binary, varbinary, image
Các kiểu khác: cursor, table, variant, timestamp, uniqueidentifier
Nguồn: Internet

Cấu hình NAT

http://cci7.net/for@m/showthread.php?t=1366

HƯỚNG DẪN XÂY DỰNG MÔ HÌNH MẠNG VỚI VMWAR




A. Giới thiệu

VMWare (Virtual Machine Software) là một trong những chương trình ào hóa hàng dầu hiện nay. Chương trình này giúp tạo ra máy ảo với phần cứng mô phỏng hoàn toàn các thiết bị phần cứng trên máy tính thật, cung cấp khả năng liên kết máy ảo trực tiếp với các thiết bị ngoại vi, đặc biệt là các thiết bị lưu trữ di động. Chương trình là công cụ hữu ích cho các quản trị viên cần có môi trường ảo để nghiên cứu, thử nghiệm hay thiết kế mô hình mạng

Dưới đây, tôi sẽ hướng dẫn các bạn cài đặt, cấu hình máy ảo và thiết lập hệ thống mạng với phần mềm VMWare

B. Cài đặt và quản lý một số cấu hình cơ bản của VMWare

Chương trình máy ảo tôi xài dưới đây là VMWare Workstation 6.5.0 build- 118166


Các bạn có thể download phiên bản mới nhất ở đây http://www.vmware.com/download/ws/

Khi cài đặt, các thông số để mặc định.




Khi cấu hình xong hệ thống yêu cầu Restart lại máy.


Sau khi cài đặt xong các bạn vào phần Network Connection kiểm tra có thêm 2 card mạng


Card mạng Local Area Connection 2 và Local Area Connection 2 được nối vào VMnet1 và VMnet8 là 2 trong 10 Switch ảo mà VMWare hỗ trợ cho người sử dụng. Các Switch ảo này được dùng để kết nối máy thật với máy ảo, máy ảo với máy ảo nhằm tạo ra các hệ thống mạng riêng biệt. Để quản lý các thông số cấu hình, ta vào menu Edit> Virtual Network Editor>


Tab Host Virtual Adapters


Hay tab Host Virtual Network Mapping.


Trong số 10 Switch ảo thì VMnet0, VMnet1, VMnet8 được kết nối với một vài thiết bị đặc biệt khác như Virtual Bridge, Virtual NAT Device, DHCP Server. Đặc điểm của các VMnet đó như sau:

1. VMnet0


Trong VMWare, VMnet0 chính là một Switch ào được kết nối với Bridge ảo để liên lạc ra ngoài mạng thật. Các máy tính ảo nếu được cấu hình card mạng kết nối vào VMnet0 thì có thể tham gia vào việc liên lạc, chia sẻ dữ liệu với các máy thật ở mạng ngoài. Nếu mạng ngoài chúng ta có kết nối với Router ADSL, có cấu hình cấp IP động trên Router thì các máy ảo sẽ nhận được IP từ Router như một máy tính thật. Mặc định, VMWare sẽ tự chọn card mạng trên máy thật mà có kết nối ra mạng ngoài. Tuy nhiên nếu máy các bạn có nhiều hơn 2 card mạng thật thì chúng ta có thể lựa chọn lại cho phù hợp bằng cách điều chỉnh trong Virtual Network Editor > tab Host Virtual Network Mapping> VMnet0.

2. VMnet1 (Host Only Mode) 


VMnet1 cũng là 1 Switch ảo nhưng chỉ sử dụng để kết nối máy thật và máy ảo trong máy tính cài VMWare. Bản thân VMnet1 được kết nối với Virtual DHCP Server để cấp IP động cho những máy kế nối vào nó. Giá trị mặc định của DHCP Scope là 192.168.18.0/24. Khi cài đặt xong VMWare thì card mạng Local Area Connection 2 do chương trình tạo ra được kết nối vào VMnet1 và có địa chỉ IP tĩnh cùng NetID với Scope. Các bạn có thể chỉnh sửa thông số Scope, gỡ bỏ DHCP Server được kết nối vào VMnet hiện tại hay thêm DHCP Server vào VMnet khác bằng cách vào Virtual Network Editor> tab DHCP


Trong tab này chúng ta có thể thêm DHCP kết nối vào VMnet khác (Add…), gỡ bỏ DHCP hiện có (Remove) hay dừng (Stop), khởi động (Start) dịch vụ DHCP. Chỉnh sửa thông số DHCP thông qua tab Properties


3. VMnet8 (NAT)


VMnet 8 là Switch ảo vừa được nối vào Virtual DHCP lại được nối vào Virtual NAT Device giúp cho các máy ảo trong VMWare có thể liên lạc với mạng ngoài nhưng theo giao thức NAT. NAT Device ở đây là 1 thiết bị được quản lý bởi VMWare, có địa chỉ IP riêng chứ không phải giống như ta cấu hình ICS trên Windows là dùng máy thật như 1 NAT Device rồi NAT từ Virtual NIC (Adapter VMnet8) qua Physical NIC. Để quản lý DHCP Server thì bạn vào những phần tôi đã nêu ở trên VMnet1. Còn muốn quản lý cấu hình NAT Device thì bạn vào Virtual Network Editor> tab NAT. Nhưng các bạn lưu ý, chúng ta chỉ được hỗ trợ 1 NAT Device nên chỉ có 1 VMnet được kết nối ra ngoài theo cơ chế NAT.


4. VM Team và LAN Segment

Ngoài cách cấu hình các máy ảo nối với nhau thông qua các VMnet, chúng ta còn có thể tạo ra các VM Team để nhóm các máy ảo lại với nhau rồi tạo ra LAN Segment để kết nối chúng lại. Với cách này ta không cần phải cho máy ảo nối vào các VMnet. Để tạo VM Team chúng ta vào Tab HOME> New Team




Đặt tên và nơi lưu để quản lý


Đưa máy ảo vào. Ở bước này chúng ta có thể tạo máy ảo mới luôn hoặc là nhóm những máy ảo đã tạo sẵn.




Gắn các LAN Segment vào trong Team


Cấu hình kế nối với các LAN Segment


Để quản lý các VM Tam chúng ta vào menu Team> Settings




C. Tạo máy ảo và cấu hình chức năng với VMWare Workstation

1. Tạo máy ảo với VMWare

Trang HOME> New Virtual Machine


Nếu các hệ điều hành bạn dự định cài đặt lên máy ảo thuộc loại phổ dụng thì bạn sẽ được VMWare hỗ trợ cài đặt không giám sát bằng cách chọn Typical rồi điền các thông số vào cần thiết vào trước


Số CD-Key


Nơi lưu


Định dung lượng ổ đĩa. Nếu dung lượng đĩa hơn 2 GB, bạn có thể lựa chọn lưu thành 1 file để dễ quản lý hay đưa ra thành cái file 2 GB để dễ di chuyển.




Trong trường hợp hệ điều hành các bạn sắp cài đặt không thuộc loại phổ dụng thì bạn nên chọn phần Custom rồi thiết lập các thông số cấu hình phù hợp cho máy ảo.

Với máy ảo VMWare, các phím thao tác được quy định như máy thật. Ví dụ muốn hiện của sổ Logon trong Windows Server 2003 trong máy ảo cũng nhấn Ctrl + Alt+ Del như máy thật chứ không bị hạn chế như Virtual PC là nhấn Alt phải + Del.

2. Quản lý cấu hình phần cứng

Để máy ảo hoạt động tối ưu hơn, sau khi cài đặt hệ điều hành cho máy ảo xong các bạn nên cài vào máy ảo bộ công cụ VMWare Tool. Khởi động máy ảo lên, chọn vào menu VM> Install VMWare Tool


Cài đặt xong góc dưới bên tay phải của màn hình máy ảo sẽ có biểu tượng VMWare Tool. Các phần cứng đã được tối ưu dựa theo cấu hình phần cứng máy thật (card mạng tốc độ lên 1.0 Gbps)


Ngoài ra trong máy ảo, các bạn có thể chỉnh sửa cấu hình phần cứng như thêm card mạng, ổ đĩa cứng v.. v.. Nhưng trong quá trình chỉnh sửa bạn phải tắt máy ảo, trong cửa sổ máy ảo bạn chọn Edit Virtual machine settings


Giả sử trong trường hợp này ta muốn thêm card mạng. Trong cửa sổ Virtual Machine Settings> tab Hardware> Add


Chọn Network Adapter


Chọn VMnet muốn kết nối và Finish


3. Nhân bản máy ảo

Khi các bạn cần nhiều máy ảo để xây dựng mô hình mạng máy tính, mà các máy ảo cấu hình và hệ điều hành tương tự nhau thì các bạn có thể lựa chọn nhân bản máy ảo bạn đã cấu hình và cài đặt phần mềm đầy đủ thay vì phải cài đặt lại 1 máy ảo mới hoàn toàn. Để thực hiện các bạn chọn vào máy ảo đã có, click phải chọn Clone.


Các bạn chọn nơi đặt bản sao lưu. Máy nhân bản hoạt động như máy gốc, nhưng các bạn nhớ phải đổi computername và IP để tránh xung đột với máy gốc. trong trường hợp muốn join cả 2 máy vào domain thì các bạn phải đổi SID của máy nhân bản cho khác máy gốc.

4. Tạo điểm phục hồi (Snapshoot)

Trên máy thật, mỗi khi cần lưu lại thông số cấu hình hiện tại, ta phải sử dụng các chương trình sao lưu và phục hồi. Nhưng trong máy ảo ta có chức năng Snapshoot để tạo ra các điểm giúp phục hồi về trạng thái định trước mà không cần bất kì chương trình sao lưu nào.

Để tạo bản Snapshoot, trong cửa sổ máy ảo ta click phải, chọn Take Snapshoot.


Các bản Snap Shoot được quản lý trong Snapshoot Manager


Khi bạn muốn quay lại trạng thài cấu hình máy trước đó, chọn bản Snapshoot rồi click vào nút Go To.

D. Xây dựng mô hình mạng máy tính dựa trên các VMnet

Chúng ta dùng chương trình máy ảo để dựng mô hình mạng sau:


Chúng ta sẽ cấu hình 2 máy giữa làm Router cho Client có thể truy cập tới Domain Controller. Chúng ta phải cấu hình cho máy làm Router có 2 card mạng, thiết lập địa chỉ cho các máy như sau:

Máy Client


Máy Router1


Máy Router2


Máy Domain Controller


Stop và disable dịch vụ Firewall trên các máy.

Triển khai Routing and Remote Access trên máy Router1: Start> Programs> Administrative Tools> Routing and Remote Access> Confirure and Enable Routing and Remote Access
Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1076x861


Cửa sổ Welcome> Next tới
Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1076x861


Chọn Custom Configuration> Next
Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1076x861


Chọn LAN Routing
Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1076x861


Và Next tới khi Finish. Dịch vụ Routing and Remote sẽ yêu cầu chúng ta Restart và sẽ bắt đầu hoạt động. Sau khi Enable xong chúng ta tạo Route định tuyến qua mạng bên kia. Chọn vào Static Route, click phải chọn New Static Route
Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1076x861


Cấu hình các thông số như sau:
Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1076x861


Tương tự chúng ta Enable Routing and Remote Access cho Router2. Sau đó cấu hình thông số Route trả về như sau:
Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1076x861


Kiểm tra trên Client: Ping Domain Controller, dùng lệnh Nslookup phân giải DNS trên Domain Controller
Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1076x861


Tương tự các bạn có thể triển khai nhiều mô hình khác với chương trình máy ảo VMWare.
Nguồn: internet
__________________