Chạy backup database từ file bat

Trong môi trường phát triển một ứng dụng mới, database của bạn sẽ thường xuyên phải chỉnh sửa cấu trúc, dữ liệu. 
Hoặc hàng ngày bạn phải lặp đi lặp lại nhiệm vụ backup database của công ty hoặc của khách hàng.
Phiên bản SQL bạn sử dụng lại là phiên bản SQL 2008 Express không có SQL Agent để tự động chạy Job thực hiện việc bakup database. Bạn sẽ thực hiện công việc tự động này bằng cách sử dụng Task Scheduler có sẵn của Window.
Bạn không muốn mở SQL Management Studio hoặc ứng dụng của bạn lên chỉ để thực hiện một chức năng duy nhất là backup một database nào đó của công ty.
Tất cả những gì bạn muốn là double click lên một file .bat và nó sẽ thực hiện chạy một câu lệnh sql bất kỳ cho bạn, cụ thể trong bài này là thực hiện một Procedure làm công việc backup database.

Chúng ta sẽ sử dụng sqlcmd để thực hiện công việc trên.

Đọc thêm »

Giải quyết vấn đề lỗi không thể kết nối trong SQL Server

Vấn đề:
Thỉnh thoảng bạn gặp những báo lỗi sau về kết nối:
ERROR: (provider: Named Pipes Provider, error: 40 – Could not open a connection to SQL Server) (Microsoft SQL Server, Error:) An error has occurred while establishing a connection to the server. (provider: Named Pipes Provider, error: 40 – Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 5)
Hoặc:
An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 – Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 1326)
Hoặc:
SQL Server) (Microsoft SQL Server, Error:) An error has occurred while establishing a connection to the server. (provider: Named Pipes Provider, error: 40 – Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 5)
Những lỗi này xuất hiện với cả hai phương thức kết nối Name Pipe và TCP/IP. Trong bài này chúng ta sẽ xem xét tất cả các vấn đề dẫn đến các lỗi này và cách giải quyết.
Giải pháp:
Có một số lý do dẫn đến các lỗi này, và bạn cần theo các bước sau để kiểm tra một cách tòan diện vấn đề kết nối:

Đọc thêm »

Backup database nâng cao bằng PowerShell

Vấn đề :
Bài viết này sẽ mô tả một ví dụ trong đó chúng ta có một scrip chạy mỗi ngày một lần thực hiện việc full backup, xác nhận công việc sao lưu, copy chúng qua mạng LAN, thực hiện việc lưu trữ và gửi thông báo về công việc qua email. Ngoài ra còn có một tùy chọn để tải các bản backup lên một máy chủ FTP. 
Giải pháp:  
Để thực hiện tòan bộ công việc trên, bản thân một mình SQL Server không thực hiện được mà chúng ta dùng đến một ứng dụng gọi là PowerShell. Có một thủ tục để thực hiện việc sao lưu và phục hồi CSDL là bước đầu tiên và quan trọng nhất trong việc bảo đảm an toàn dữ liệu của tổ chức, doanh nghiệp trong trường hợp ổ cứng bị hỏng hoặc mất sự kiểm soát máy chủ chứa dữ liệu. Một trong những phương pháp được ưa thích của nhiều nhà quản trị mạng và các DBA chuyên nghiệp để thực hiện việc sao lưu CSDL là sử dụng PowerShell và Shared Management Objects (SMO), được thực hiện từ Windows Task Scheduler. Sau đây là một ví dụ cụ thể.

Đọc thêm »