Cách kết nối với phiên bản cục bộ của SQL Server 2008 Express


222

Tôi vừa cài đặt SQL Server 2008 Express trên máy Vista SP1. Trước đây tôi đã có 2005 ở đây và sử dụng nó tốt với SQL Server Management Studio Express cũ. Tôi không thể kết nối mà không gặp vấn đề gì với phiên bản PC-NAME \ SQLEXPRESS của tôi (không, PC-NAME không phải là tên máy tính của tôi ;-).

Tôi đã gỡ cài đặt 2005 và SQL Server Management Studio Express. Sau đó tôi đã cài đặt SQL Server 2008 Express trên máy của mình và chọn để cài đặt SQL Server Management Studio Basic.

Bây giờ, khi tôi cố gắng kết nối với PC-NAME \ SQLEXPRESS (với Xác thực Windows, như tôi vẫn thường làm), tôi nhận được thông báo sau:

Không thể kết nối với PC-NAME \ SQLEXPRESS. Đã xảy ra lỗi liên quan đến mạng hoặc trường hợp cụ thể trong khi thiết lập kết nối với SQL Server. Máy chủ này không tìm thấy hoặc không thể truy cập được. Xác minh rằng tên ví dụ là chính xác và SQL Server được cấu hình để cho phép kết nối từ xa. (nhà cung cấp: SQL Network Interfaces, error: 26 - Lỗi Định vị Server / Instance rõ) (Microsoft SQL Server, Error: -1) Để được trợ giúp, bấm: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL + Máy chủ & EvtSrc = MSSQLServer & EvtID = -1 & LinkId = 20476

Khi tôi cài đặt SQL Server 2008, tôi đã sử dụng SQLEXPRESS làm tên đối tượng cục bộ. Theo như tôi có thể nói, thông qua Trình quản lý cấu hình SQL Server, SQL Server được cấu hình để cho phép các kết nối từ xa.

Khi tôi đi đến liên kết trợ giúp mà nó đề cập, trang trợ giúp gợi ý như sau:

  • Đảm bảo rằng dịch vụ Trình duyệt SQL Server được khởi động trên máy chủ.
  • Sử dụng công cụ Cấu hình Bề mặt Máy chủ SQL để cho phép Máy chủ SQL chấp nhận các kết nối từ xa. Để biết thêm thông tin về Công cụ cấu hình bề mặt máy chủ SQL, hãy xem Cấu hình bề mặt cho các dịch vụ và kết nối.

Chà, theo như tôi có thể nói, không có dịch vụ Trình duyệt SQL Server trên hệ thống của tôi (đã tìm trong MMC, không thể tìm thấy một).

Và công cụ Cấu hình Bề mặt Máy chủ SQL không tồn tại trong SQL Server 2008. Rất tốt với tài liệu trợ giúp của bạn, Microsoft ;-).

Tôi không biết phải làm gì ngay bây giờ. Tôi đã có rất nhiều công việc mà tôi hy vọng sẽ hoàn thành ngày hôm nay sau khi nâng cấp lên 2008 (người tôi đang làm việc đã khởi động và không gặp vấn đề gì và nói với tôi rằng nó sẽ dễ dàng - anh ấy cũng tốt hơn với công cụ cơ sở dữ liệu mà tôi là). Có ai có bất cứ ý tưởng những gì có thể sai? Tôi thực sự đánh giá cao nó. Nếu tôi không thể làm việc này trong vài giờ nữa, tôi sẽ quay lại SQL Server 2005 (nếu điều đó thậm chí sẽ hoạt động, gah ...).

Chỉnh sửa: Tôi đã thử tắt Tường lửa Windows và điều đó không giúp được gì. Ngoài ra, tôi nhận thấy rằng tôi không có thư mục "Dữ liệu" trong cây thư mục cài đặt SQL Server 2008 của mình - tôi có thể thiết lập một cái gì đó sai khi tôi cài đặt nó không?

Câu trả lời:


328

Vui lòng kiểm tra Tên máy chủ mà bạn cung cấp. Tên này phải khớp với Tên được hiển thị bên dưới trong hộp văn bản Tên người dùng và tên đó phải được theo sau \SQLEXPRESS:

Kết nối hộp thoại


30
Câu hỏi này đã 2 tuổi, nhưng đây là điều đã giúp tôi. Tôi không biết tôi cần tên máy tính trước\SQLEXPRESS
RoLYroLL

6
Tôi hiểu câu hỏi này khá cũ nhưng tôi đã tìm thấy nó sau nhiều thất vọng. Tôi cảm thấy thông báo lỗi nên đưa ra đề xuất này thay vì cung cấp thông tin vô ích :(
mob1lejunkie

Cảm ơn bạn! Tên miền là những gì tôi thực sự cần.
Rubens Mariuzzo

không thể tin rằng hộp thả xuống được chuẩn bị trước chỉ với SQLEXPRESS không hoạt động
Nicolas78

Cảm ơn bạn, đảm bảo rằng bạn nhận thấy được tạo bởi "Tên máy tính của bạn" \ SQLEXPRESS
Windsound

106

Bắt đầu dịch vụ máy chủ SQL cục bộ của bạn

  • Khởi động Trình quản lý cấu hình SQL: Nhấp vào Bắt đầu -> Microsoft SQL Server 2008 R2 -> Trình quản lý cấu hình SQL Server
  • Bắt đầu dịch vụ SQL: Đặt dịch vụ SQL Server (SQLEXPRESS) và SQL Server Browser thành chế độ khởi động tự động. Nhấp chuột phải vào từng dịch vụ -> Thuộc tính -> Đi vào Tab Dịch vụ

Điều này sẽ đảm bảo họ khởi động lại nếu bạn khởi động lại máy tính. Vui lòng kiểm tra để đảm bảo trạng thái là "Chạy" cho cả hai dịch vụ.

Bắt đầu dịch vụ SQL Server 2008 cục bộ của bạn

Đăng nhập và xác thực với Máy chủ SQL cục bộ của bạn

  • Bây giờ hãy mở SQL Server Management Studio và nhấp vào "Kết nối với Object Explorer" và chọn Tên máy chủ:

[Tên PC của bạn] \ SQLEXPRESS

Ví dụ: 8540P-KL \ SQLEXPRESS hoặc (localhost) \ SQLEXPRESS

  • Để tìm tên PC của bạn: Nhấp chuột phải vào Máy tính của tôi -> Thuộc tính -> tab Tên máy tính

  • Thay thế: Đăng nhập bằng xác thực windows: Sử dụng tên người dùng [Tên miền của bạn] / [Tên người dùng của bạn]

Cài đặt tài khoản người dùng SQL Server 2008

Thiết lập tài khoản người dùng

  • Tạo acct Đăng nhập mới: Trong SQL Mgmt Studio -> Mở rộng Máy chủ cục bộ của bạn -> Bảo mật -> Nhấp chuột phải vào Đăng nhập -> Đăng nhập mới

  • Đặt cài đặt Mật khẩu trên Tài khoản người dùng mới: Bỏ chọn Thực thi chính sách mật khẩu, hết hạn mật khẩu và người dùng phải thay đổi pw (Vì đây là cục bộ) Cơ sở dữ liệu mặc định -> Cơ sở dữ liệu của bạn

  • Cấp vai trò cho Tài khoản người dùng mới: Trang ánh xạ người dùng -> Ánh xạ tới db của bạn và cấp Trang trạng thái vai trò db_owner -> Cấp quyền để kết nối và cho phép đăng nhập

Cài đặt người dùng SQL Server 2008 DB cục bộ

Thiết lập quyền truy cập / Cài đặt cho người dùng

  • Bật tất cả các chế độ xác thực: Nhấp chuột phải vào Máy chủ cục bộ của bạn -> Thuộc tính -> Tab bảo mật -> Bật SQL Server và Chế độ xác thực Windows
  • Bật TCP / IP: Mở Trình quản lý cấu hình máy chủ SQL -> Cấu hình mạng máy chủ SQL -> Giao thức cho SQLEXPRESS -> Bật TCP / IP
  • Khởi động lại dịch vụ máy chủ SQL: Bạn sẽ phải khởi động lại máy chủ SQL (SQLEXPRESS) sau khi bật TCP / IP

Quyền máy chủ SQL Server 2008

Tệp thuộc tính cơ sở dữ liệu cho dự án mùa xuân

  • cơ sở dữ liệu.url = jdbc: jtds: sqlserver: // [
    tên máy tính cục bộ ]; instance = SQLEXPRESS; DatabaseName = [tên db];

  • cơ sở dữ liệu.username = [Tên người dùng của bạn] cơ sở dữ liệu.password = [Mật khẩu của bạn]

  • cơ sở dữ liệu.driverClassName = net.sourceforge.jtds.jdbc.Driver

Nếu bạn muốn xem ảnh chụp màn hình lớn hơn và định dạng câu trả lời tốt hơn với nhiều chi tiết hơn, vui lòng xem bài viết blog bên dưới: Thiết lập Bài đăng địa phương của SQL Server 2008 Blog Post:


3
Cảm ơn bạn. Điều này đã giúp bó
Alan Waage

1
Cảm ơn bạn rất nhiều! Điều này thực sự hữu ích ngay cả đối với phiên bản 2014 !!
powernit

Như câu trả lời này chỉ ra, nếu bạn không thấy SQL Server 2014 Configuration Manager(bất kể năm nào) khi bạn tìm kiếm "trình quản lý cấu hình" tại Bắt đầu ... thì có khả năng bạn chưa cài đặt phiên bản SQL Server hợp lệ.
Don Cheadle

40

Tôi đã sử dụng (LocalDB) \ MSSQLLocalDB làm tên máy chủ, sau đó tôi có thể xem tất cả các cơ sở dữ liệu cục bộ.


Hoạt động tốt với VS 2015 trên Windows 10 64Bit. Cảm ơn
Pirate X

đã làm việc bằng SSMS 2014. Nhưng tôi nghi ngờ điều này phụ thuộc vào việc chạy một ứng dụng web .NET đã cài đặt / tạo máy chủ cục bộ này.
Don Cheadle

Đó là LocalDB được cài đặt với Visual Studio, không phải SQL Server Express. Câu trả lời này hữu ích cho những người thực sự đang tìm kiếm điều đó nhưng sự khác biệt rất quan trọng nếu bạn cần truy cập SQL Express hoặc tạo cơ sở dữ liệu trên SQL Express để sử dụng các tính năng LocalDB không hỗ trợ như Tìm kiếm toàn văn bản
IronSean

Cảm ơn bạn đã làm rõ IronSean
petrosmm

34

Haha, oh boy, tôi đã tìm ra nó. Bằng cách nào đó, đôi khi, tôi đã không cài đặt Cơ sở dữ liệu khi tôi cài đặt SQL Server 2008. Tôi không biết mình đã bỏ lỡ điều đó như thế nào, nhưng đó là điều đã xảy ra.


Làm thế nào tôi có thể kiểm tra nếu công cụ cơ sở dữ liệu được cài đặt? nó sẽ không được cài đặt tự động?
eran otzap

Trong trường hợp của tôi, tôi đã quên cài đặt Kết nối Công cụ Máy khách , nhưng đó chỉ là một hộp kiểm khác trên trang "Tính năng" trong khi cài đặt. Dù sao, bạn chỉ cho tôi đi đúng hướng. Cảm ơn.
Radek Stromský

Trong trường hợp của tôi, trong khi cài đặt máy chủ sql, tôi không nhận được dịch vụ Cơ sở dữ liệu. Khi cài đặt, tôi có 3 tùy chọn 1.Instane Fetaure (không có hộp kiểm nào bên dưới) 2. Tính năng hủy (với 2 cehckbox) 3. Các tính năng phân phối. Hãy cho tôi biết lý do tại sao tôi đã nhận được Engine Engine Serivce.
Kavitha

tôi cũng có vấn đề này trang tải về có phần khó hiểu. đảm bảo bạn tải xuống chương trình máy chủ thực tế thay vì giao diện quản lý hoặc một trong những lựa chọn khác không có thành phần máy chủ.
Anthony

22

Tôi biết câu hỏi này đã cũ, nhưng trong trường hợp nó giúp mọi người đảm bảo Trình duyệt Máy chủ SQL đang chạy trong Dịch vụ MSC. Tôi đã cài đặt SQL Server Express 2008 R2 và Dịch vụ trình duyệt SQL Server được đặt thành Tắt.

  1. Bắt đầu-> Chạy-> Services.msc
  2. Tìm "Trình duyệt máy chủ SQL" -> Nhấp chuột phải-> Thuộc tính
  3. Đặt Loại khởi động thành Tự động-> Nhấp vào Áp dụng
  4. Thử lại kết nối của bạn.

đó là vấn đề của tôi với kết nối. Tôi đã có thể mặc trên studio quản lý, nhưng từ máy chủ ứng dụng là vô hình :) cảm ơn!
Slav

Đây là nó cho tôi ngoại trừ đó là SQL Server Agent chưa được khởi động - Tôi đã tắt nó vì nó tiêu tốn quá nhiều tài nguyên khi tôi không sử dụng nó.
JTech

15

Tôi vừa mới giải quyết một vấn đề liên quan đến vấn đề này có thể giúp đỡ người khác.

Ban đầu khi tải lên MSSMSE nó có server như PC_NAME\SQLEXPRESSvà khi tôi cố gắng để kết nối nó đã cho tôi Error: 26 - Error Locating Server/Instance Specified, vì vậy tôi đã đi vào SQL Server Configuration Manager để kiểm tra xem tôi SQL Server BrowserSQL Servercác dịch vụ đang chạy và các thiết lập để tự động, chỉ để thấy rằng thay vì nói SQL Server (SQLEXPRESS)nó nói SQL Server(MSSQLSERVER).

Sau đó tôi đã thử kết nối PC-NAME\MSSQLSERVERvà lần này gặp phải SQL Network Interfaces, error: 25 - Connection string is not valid) (MicrosoftSQL Server, Error: 87) The parameter is incorrectlỗi này và tôi đã nhận ra lỗi này và thấy rằng ai đó đã đề nghị thay vì PC-NAME\MSSQLSERVERchỉ sử dụng PC-NAMElàm Tên máy chủ tại giao diện kết nối máy chủ và điều này có vẻ hiệu quả.

Có một liên kết ở đây http://learningsqlserver.wordpress.com/2011/01/21/what-version-of-sql-server-do-i-have/ giải thích rằng MSSQLSERVER là phiên bản mặc định và có thể được kết nối bởi chỉ sử dụng tên máy chủ của bạn.

Tôi nghĩ điều này có thể phát sinh vì tôi đã cài đặt SQL Server 2008 tại một số điểm trong quá khứ.


Bạn đã đúng: "chỉ cần sử dụng PC-NAME (đặt tên máy tính của bạn ở đây) làm Tên máy chủ tại giao diện kết nối Máy chủ". Nó hoạt động.
Nhà phát triển Marius ilėnas

9

Trong Trình quản lý cấu hình và Cấu hình và giao thức mạng cho phiên bản của bạn có bật TCP / IP không? Đó có thể là vấn đề.


1
bạn cũng phải kích hoạt tài khoản "sa" và cung cấp mật khẩu vì nó bị tắt theo mặc định. ngoài ra, bạn có thể cần phải bật Xác thực SQL vì theo mặc định "nt auth".
djangofan

8
var.connectionstring = "server=localhost; database=dbname; integrated security=yes"

hoặc là

var.connectionstring = "server=localhost; database=dbname; login=yourlogin; pwd=yourpass"

6

Đối với tôi, tôi chỉ có thể làm cho nó hoạt động bằng cách sử dụng "." trong trường tên máy chủ; đã bỏ đi một lúc để thử các combo khác nhau của tên người dùng và tên máy chủ. Lưu ý rằng trong quá trình cài đặt máy chủ (ví dụ: tệp này: SQLEXPR_x64_ENU.exe) tôi đã kiểm tra phiên bản mặc định có tên mặc định là MSSQLSERVER; các câu trả lời được bình chọn cao ở trên có thể được sử dụng tốt nhất cho các trường hợp máy chủ được đặt tên riêng (tức là khi bạn cần nhiều hơn 1).

cả hai video này đều giúp tôi hiểu:


3

Một trong những điều đầu tiên mà bạn nên kiểm tra là Máy chủ SQL (MSSQLSERVER) đã được khởi động. Bạn có thể truy cập Bảng điều khiển dịch vụ (services.msc) và tìm SQL Server (MSSQLSERVER) để thấy rằng nó được khởi động. Nếu không, sau đó bắt đầu dịch vụ.

Bạn cũng có thể làm điều này thông qua một dấu nhắc lệnh nâng cao bằng cách gõ net start mssqlserver.


1

Đối với tôi đó là một vấn đề tường lửa. Cho phép kết nối đến. Mở cổng không hoạt động nhưng cho phép các chương trình đã làm.

Liên kết

Liên kết2

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.