SQL Server - Problema SQL SERVER 2016 - Propiedades TCP/IP - Open IPALL TCPPort 1433

 
Vista:
sin imagen de perfil

Problema SQL SERVER 2016 - Propiedades TCP/IP - Open IPALL TCPPort 1433

Publicado por Javier (1 intervención) el 23/11/2017 14:41:44
Sin-titulo

Hola, una cuestión que me está volviendo loco desde hace una semana

Necesito abrir el 1433 sin ayuda externa de usuarios

Para ello he probado lo siguiente
1º Acceder a la clave del registro y modificarla desde vb.net, Framework 4.0 Visual Studio 2010, pero la clave no deja modificarla
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL13.MSSQLSERVERMSSQLServer\SuperSocketNetLib\Tcp\IPAll

2ºLanzar un .bat que lanza un vb.script
Contenido del .bat

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
@echo off
if _%1_==_payload_  goto :payload
 
:getadmin
    echo %~nx0: elevating self
    set vbs=%temp%\getadmin.vbs
    echo Set UAC = CreateObject^("Shell.Application"^)                >> "%vbs%"
    echo UAC.ShellExecute "%~s0", "payload %~sdp0 %*", "", "runas", 1 >> "%vbs%"
    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"
goto :eof
 
:payload
 
::ENTER YOUR CODE BELOW::
 
cd \
 
cd C:\Program Files (x86)\MiCarpeta
dir
pause
 
 
 start  1433_SQL2016.vbs
 
 
pause
 
 
 
::END OF YOUR CODE::
 
echo.
echo...Script Complete....
echo.
 
pause

Contenido del script
Fuente: https://gist.github.com/stefanteixeira/12602d32416808ab538b#file-configipall-vbs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
set wmiComputer = GetObject( _
    "winmgmts:" _
    & "!\\.\root\Microsoft\SqlServer\ComputerManagement13")
 
	set tcpProperties = wmiComputer.ExecQuery( _
    "select * from ServerNetworkProtocolProperty " _
    & "where InstanceName='MSSQLSERVER' and " _
    & "ProtocolName='Tcp' and IPAddressName='IPAll'")
 
	for each tcpProperty in tcpProperties
 
		dim setValueResult, requestedValue
		Wscript.Echo tcpProperty.PropertyName
		if tcpProperty.PropertyName = "TcpPort" then
			requestedValue = "1433"
		elseif tcpProperty.PropertyName ="TcpDynamicPorts" then
			requestedValue = ""
		end if
		setValueResult = tcpProperty.SetStringValue(requestedValue)
		if setValueResult = 0 then
			Wscript.Echo "" & tcpProperty.PropertyName & " set."
		else
			Wscript.Echo "" & tcpProperty.PropertyName & " failed!"
		end if
	next

Si lanzo este .bat desde un doble clik con ayuda del raton se ejecuta y cambia el puerto al 1433
Sin embargo si el .bat lo lanzo desde un process.start + permisos de admin "runas" no encuentra


Sin-titulo2




Tambien he intentado con la query para intetar cambiar la clave del registro de windows pero nada

1
2
3
4
5
6
7
8
9
10
11
DECLARE       @portNumber   NVARCHAR(10)=1433
 
EXEC   xp_instance_regread
@rootkey    = 'HKEY_LOCAL_MACHINE',
@key        =
'SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQLServer\SuperSocketNetLib\Tcp\IPAll',
@value_name = 'TcpPort',
@value      = @portNumber OUTPUT
 
SELECT [Port Number] = @portNumber
GO
Alquien en mi misma situacion????
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder