Marvin
Marvin

Reputation: 33

How do you configure the SQL Server Network Configuration protocols in a MSSQL Express Docker container on a Linux server?

The gist of the issue is that I am trying to connect to a MSSQL Express Docker container, living on a RHEL 7 server from my local Windows 10 machine using Microsoft SQL Server Management Studio. It is successfully connecting to the RHEL 7 server IP address and port (1433), using the username/password that was created for the container. However, it is throwing out an error that, after countless hours scouring Google, people have referenced back to needing to enable TCP/IP. This is easy in the Windows GUI. Not so much in a Linux environment.

The error message from SSMS:

A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - The specified network name is no longer available.) (Microsoft SQL Server, Error: 64) -> The specified network name is no longer available

I know how to do this in the Windows environment:

  1. Run SQL Server Configuration Manager
  2. Expand SQL Server Network Configuration
  3. Select Properties for Protocols for MSSQLSERVER
  4. Enable TCP/IP

I have also figured out how to use mssql-conf to modify various attributes in mssql.conf, which is where this change will take place. The issue is that I want to enable TCP/IP, but I am not seeing that option under the /opt/mssql/bin/mssql-conf list | more.

Any suggestions?

For reference, these are the parameters you can use with mssql-conf (the equivalent of SQL Server Configuration Manager on Linux).

control.alternatewritethrough                           Enable optimized write through flush for O_DSYN
C requests
control.hestacksize                                     Host extension stack size in KB
control.stoponguestprocessfault                         Stops the process if any guest process reports
unhandled exception
control.writethrough                                    Use O_DSYNC for file flag write through request
s
coredump.captureminiandfull                             Capture both mini and full core dumps
coredump.coredumptype                                   Core dump type to capture: mini, miniplus, filt
ered, full
distributedtransaction.allowonlysecurerpccalls          Configure secure only rpc calls for distributed
 transactions
distributedtransaction.fallbacktounsecurerpcifnecessary Configure security only rpc calls for distribut
ed transactions
distributedtransaction.maxlogsize                       DTC log file size in MB. Default is 64MB
distributedtransaction.memorybuffersize                 Circular buffer size in which traces are stored
. This size is in MB and default is 10MB
distributedtransaction.servertcpport                    MSDTC rpc server port
distributedtransaction.trace_cm                         Traces in the connection manager
distributedtransaction.trace_contact                    Traces the contact pool and contacts
distributedtransaction.trace_gateway                    Traces Gateway source
distributedtransaction.trace_log                        Log tracing
distributedtransaction.trace_misc                       Traces that cannot be categorized into the othe
r categories
distributedtransaction.trace_proxy                      Traces that are generated in the MSDTC proxy
distributedtransaction.trace_svc                        Traces service and .exe file startup
distributedtransaction.trace_trace                      The trace infrastructure itself
distributedtransaction.trace_util                       Traces utility routines that are called from mu
ltiple locations
distributedtransaction.trace_xa                         XA Transaction Manager (XATM) tracing source
distributedtransaction.tracefilepath                    Folder in which trace files should be stored
distributedtransaction.turnoffrpcsecurity               Enable or disable RPC security for distributed
transactions
filelocation.defaultbackupdir                           Default directory for backup files
filelocation.defaultdatadir                             Default directory for data files
filelocation.defaultdumpdir                             Default directory for crash dump files
filelocation.defaultlogdir                              Default directory for log files
filelocation.errorlogfile                               Error log file location
filelocation.masterdatafile                             Master database data file location
filelocation.masterlogfile                              Master database log file location
hadr.hadrenabled                                        Allow SQL Server to use availability groups for
 high availability and disaster recovery
language.lcid                                           Locale identifier for SQL Server to use (e.g. 1
033 for US - English)
memory.memorylimitmb                                    SQL Server memory limit (megabytes)
network.disablesssd                                     Disable querying SSSD for AD account informatio
n and default to LDAP calls
network.enablekdcfromkrb5conf                           Enable looking up KDC information from krb5.con
f
network.forceencryption                                 Force encryption of incoming client connections
network.forcesecureldap                                 Force using LDAPS to contact domain controller
network.ipaddress                                       IP address for incoming connections
network.kerberoskeytabfile                              Kerberos keytab file location
network.privilegedadaccount                             Privileged AD user to use for AD authentication
network.rpcport                                         TCP port for Rpc endpoint mapper
network.tcpport                                         TCP port for incoming connections
network.tlscert                                         Path to certificate file for encrypting incomin
g client connections
network.tlsciphers                                      TLS ciphers allowed for encrypted incoming clie
nt connections
network.tlskey                                          Path to private key file for encrypting incomin
g client connections
network.tlsprotocols                                    TLS protocol versions allowed for encrypted inc
oming client connections
sqlagent.databasemailprofile                            SQL Agent Database Mail profile name
sqlagent.enabled                                        Enable or disable SQLAgent
sqlagent.errorlogfile                                   SQL Agent log file path
sqlagent.errorlogginglevel                              SQL Agent logging level bitmask - 1=Errors, 2=W
arnings, 4=Info
telemetry.customerfeedback                              Telemetry status
telemetry.userrequestedlocalauditdirectory              Directory for telemetry local audit cache

Also for reference, this is the only thing in the mssql.conf file. If something is there be default, I have no way of knowing it, because all I have to go off of is what's listed in this file:

[sqlagent] enabled = true

Upvotes: 2

Views: 2246

Answers (0)

Related Questions