Unable to connect to LocalDB with HeidiSQL

前端 未结 2 653
走了就别回头了
走了就别回头了 2021-02-06 15:38

I have been trying to connect to a localdb instance with the latest version (at this time) of heidisql to no avail.

I have followed the instructions from this answer her

相关标签:
2条回答
  • 2021-02-06 15:39

    As of heidisql.exe Revision 9.3.0.5108 you could also:

    1. Start the database with "C:\Program Files\Microsoft SQL Server\120\Tools\Binn\SqlLocalDB.exe" start "MSSQLLocalDB"
    2. Read the "Instance pipe name" from "C:\Program Files\Microsoft SQL Server\120\Tools\Binn\SqlLocalDB.exe" info "MSSQLLocalDB" (e.g., \\.\pipe\LOCALDB#1B9DCF1E\tsql\query
    3. Start HeidiSQL with "C:\Program Files\HeidiSQL\heidisql.exe --nettype=3 --host="\\.\pipe\LOCALDB#1B9DCF1E\tsql\query" --winauth=1"

    I use a Bash script that automates all that, and it goes roughly like this:

    shopt -s expand_aliases
    alias __sqllocaldb='/c/Program\ Files/Microsoft\ SQL\ Server/120/Tools/Binn/SqlLocalDB.exe'
    alias __heidisql='/c/Program\ Files/HeidiSQL/heidisql.exe'
    __sqllocaldb start  "Development"
    hostname=$(__sqllocaldb info  "Development" | tail -1 | sed 's/\(Instance pipe name: np:\)//')
    __heidisql --nettype=3 --host="$hostname" --winauth=1
    
    0 讨论(0)
  • 2021-02-06 16:03

    For the following connection string in my Web.config;

    <add name="WEDOBADGEDatabase" connectionString="Data Source=(LocalDb)\development;Initial Catalog=WEDOBADGE;AttachDBFilename=|DataDirectory|\DevelopmentDatabase.mdf;Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
    

    Where the most important piece of information is Data Source=(LocalDb)\development, [replacing (of course) C:\Program Files\Microsoft SQL Server\120\ with the correct path & use the correct name chosen in your connection string after Data Source=(LocalDb)\ (noncase-sensitive, development in my case)] try:

    "C:\Program Files\Microsoft SQL Server\120\Tools\Binn\SqlLocalDB.exe" info Development
    

    This should output something similar to:

    Name:               Development
    Version:            12.0.2000.8
    Shared name:
    Owner:              hostname\username
    Auto-create:        No
    State:              Running
    Last start time:    8/2/2016 3:20:57 PM
    Instance pipe name: np:\\.\pipe\LOCALDB#CDE5547F\tsql\query
    

    Copy \\.\pipe\LOCALDB#CDE5547F\tsql\query from the "Instance pipe name", WITHOUT the initial np:. Also, your pipe name is likely to be different than mine.

    Then you can create a new session in HeidiSQL like this:

    N.B.: "Network type", "Hostname / IP", and "Use Windows authentication" are important; whilst other settings (such as "Databases") is up to you, so you could leave them empty / skip, etc.

    Credits go to https://stackoverflow.com/a/33748584/11895 for the pipe name suggestion.

    0 讨论(0)
提交回复
热议问题