ਡਾਟਾਬੇਸ ਮਿਰਰਿੰਗ ਕਨੈਕਸ਼ਨ ਮੁੱਦਿਆਂ ਨੂੰ ਸਮਝਣਾ
SQL ਸਰਵਰ ਵਾਤਾਵਰਨ ਵਿੱਚ ਉੱਚ ਉਪਲਬਧਤਾ ਅਤੇ ਰਿਡੰਡੈਂਸੀ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਡਾਟਾਬੇਸ ਮਿਰਰਿੰਗ ਇੱਕ ਜ਼ਰੂਰੀ ਰਣਨੀਤੀ ਹੈ। ਹਾਲਾਂਕਿ, ਮਿਰਰਿੰਗ ਨੂੰ ਕੌਂਫਿਗਰ ਕਰਨ ਨਾਲ ਕਈ ਵਾਰ ਨਿਰਾਸ਼ਾਜਨਕ ਗਲਤੀਆਂ ਹੋ ਸਕਦੀਆਂ ਹਨ, ਜਿਵੇਂ ਕਿ ਗਲਤੀ 1418, ਜੋ ਦੱਸਦੀ ਹੈ ਕਿ ਸਰਵਰ ਨੈਟਵਰਕ ਐਡਰੈੱਸ ਤੱਕ ਪਹੁੰਚ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਜਾਂ ਮੌਜੂਦ ਨਹੀਂ ਹੈ।
ਇਹ ਖਾਸ ਗਲਤੀ ਅਕਸਰ ਉਦੋਂ ਵਾਪਰਦੀ ਹੈ ਜਦੋਂ ਦੋ SQL ਸਰਵਰ ਉਦਾਹਰਨਾਂ ਦੇ ਵਿਚਕਾਰ ਇੱਕ ਮਿਰਰਿੰਗ ਸੈਸ਼ਨ ਸਥਾਪਤ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਭਾਵੇਂ ਦੋਵੇਂ ਡੇਟਾਬੇਸ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਪਹੁੰਚਯੋਗ ਹੋਣ। ਮੁੱਦਾ ਉਦੋਂ ਪੈਦਾ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਮਿਰਰਿੰਗ ਐਂਡਪੁਆਇੰਟ ਇੱਕ ਦੂਜੇ ਨਾਲ ਸੰਚਾਰ ਕਰਨ ਵਿੱਚ ਅਸਫਲ ਰਹਿੰਦੇ ਹਨ।
ਹੱਥ ਦੇ ਮਾਮਲੇ ਵਿੱਚ, ਇੱਕ ਸਥਾਨਕ ਡੈਸਕਟਾਪ (192.168.0.80) ਅਤੇ ਇੱਕ ਮਿੰਨੀ PC (192.168.0.85) ਮਿਰਰਿੰਗ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ। ਮਿੰਨੀ ਪੀਸੀ ਦਾ ਉਦੇਸ਼ ਮਿਰਰਿੰਗ ਦੇ "ਹਾਈ ਪਰਫਾਰਮੈਂਸ" ਮੋਡ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ, ਇੱਕ ਮੋਬਾਈਲ ਐਪਲੀਕੇਸ਼ਨ ਲਈ ਇੱਕ ਰੀਡ-ਓਨਲੀ ਪ੍ਰਤੀਕ੍ਰਿਤੀ ਵਜੋਂ ਕੰਮ ਕਰਨਾ ਹੈ।
ਸਹੀ ਪੋਰਟ ਕੌਂਫਿਗਰੇਸ਼ਨ ਅਤੇ ਫਾਇਰਵਾਲ ਐਡਜਸਟਮੈਂਟ ਦੇ ਬਾਵਜੂਦ, ਮਿਰਰਿੰਗ ਸੈਸ਼ਨ ਸ਼ੁਰੂ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਸਮੇਂ ਉਪਭੋਗਤਾ ਨੂੰ ਗਲਤੀ 1418 ਦਾ ਸਾਹਮਣਾ ਕਰਨਾ ਪੈਂਦਾ ਹੈ। ਇਹ ਲੇਖ ਇਸ ਮੁੱਦੇ ਨੂੰ ਹੱਲ ਕਰਨ ਦੇ ਸੰਭਾਵੀ ਕਾਰਨਾਂ ਅਤੇ ਹੱਲਾਂ ਦੀ ਪੜਚੋਲ ਕਰੇਗਾ।
| ਹੁਕਮ | ਵਰਤੋਂ ਦੀ ਉਦਾਹਰਨ |
|---|---|
| ALTER ENDPOINT | ਇਹ ਕਮਾਂਡ SQL ਸਰਵਰ ਵਿੱਚ ਇੱਕ ਡੇਟਾਬੇਸ ਮਿਰਰਿੰਗ ਐਂਡਪੁਆਇੰਟ ਦੀ ਸਥਿਤੀ ਨੂੰ ਸੋਧਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। ਗਲਤੀ 1418 ਨੂੰ ਹੱਲ ਕਰਨ ਦੇ ਸੰਦਰਭ ਵਿੱਚ, ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਅੰਤਮ ਬਿੰਦੂ ਸਹੀ ਢੰਗ ਨਾਲ ਸ਼ੁਰੂ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਨਿਰਧਾਰਤ ਪੋਰਟ 'ਤੇ ਸੁਣ ਰਿਹਾ ਹੈ। ਉਦਾਹਰਨ: ALTER ENDPOINT [Mirroring] STATE = STARTED; |
| GRANT CONNECT ON ENDPOINT | ਕਿਸੇ ਖਾਸ ਲੌਗਇਨ ਨੂੰ ਮਿਰਰਿੰਗ ਐਂਡਪੁਆਇੰਟ ਨਾਲ ਕਨੈਕਟ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਡਾਟਾਬੇਸ ਮਿਰਰਿੰਗ ਦੌਰਾਨ SQL ਸਰਵਰ ਉਦਾਹਰਨਾਂ ਨੂੰ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ ਸੰਚਾਰ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦੇਣ ਲਈ ਇਹ ਮਹੱਤਵਪੂਰਨ ਹੈ। ਉਦਾਹਰਨ: ਗ੍ਰਾਂਟ ਕਨੈਕਟ ਆਨ ENDPOINT::[Mirroring_Endpoint] TO [DOMAINUserAccount]; |
| SET PARTNER | ਇੱਕ ਡਾਟਾਬੇਸ ਮਿਰਰਿੰਗ ਸੈਸ਼ਨ ਵਿੱਚ ਸਹਿਭਾਗੀ ਵਜੋਂ ਇੱਕ SQL ਸਰਵਰ ਉਦਾਹਰਨ ਨੂੰ ਕੌਂਫਿਗਰ ਕਰਦਾ ਹੈ। ਇਹ ਕਮਾਂਡ ਪਾਰਟਨਰ ਸਰਵਰ ਲਈ ਨੈੱਟਵਰਕ ਐਡਰੈੱਸ ਸਥਾਪਤ ਕਰਦੀ ਹੈ। ਉਦਾਹਰਨ: ALTER DATABASE YourDatabaseName SET PARTNER = 'TCP://192.168.0.85:5022'; |
| CREATE ENDPOINT | ਇੱਕ ਮਿਰਰਿੰਗ ਐਂਡਪੁਆਇੰਟ ਬਣਾਉਂਦਾ ਹੈ ਜੋ ਇੱਕ ਖਾਸ ਪੋਰਟ 'ਤੇ ਸੁਣਦਾ ਹੈ ਅਤੇ ਡੇਟਾਬੇਸ ਮਿਰਰਿੰਗ ਸੈਸ਼ਨਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਦਾ ਹੈ। ਇਹ ਸੰਚਾਰ ਦੀ ਭੂਮਿਕਾ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ (ਉਦਾਹਰਨ ਲਈ, PARTNER)। ਉਦਾਹਰਨ: ਡੇਟਾਬੇਸ_MIRRORING (ROLE = PARTNER) ਲਈ TCP (LISTENER_PORT = 5022) AS ENDPOINT [Mirroring_Endpoint] ਬਣਾਓ; |
| netsh advfirewall firewall add rule | SQL ਸਰਵਰ ਅਤੇ ਮਿਰਰਿੰਗ (ਉਦਾਹਰਨ ਲਈ, 1433 ਅਤੇ 5022) ਲਈ ਲੋੜੀਂਦੇ ਖਾਸ ਪੋਰਟਾਂ ਰਾਹੀਂ ਟ੍ਰੈਫਿਕ ਦੀ ਆਗਿਆ ਦੇਣ ਲਈ ਫਾਇਰਵਾਲ ਨਿਯਮਾਂ ਨੂੰ ਕੌਂਫਿਗਰ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਮਿਰਰਿੰਗ ਭਾਈਵਾਲਾਂ ਵਿਚਕਾਰ ਸੰਚਾਰ ਨੂੰ ਸਮਰੱਥ ਬਣਾਉਣ ਲਈ ਇਹ ਜ਼ਰੂਰੀ ਹੈ। ਉਦਾਹਰਨ: netsh advfirewall firewall add rule name="SQLPort" dir=in action=allow protocol=TCP localport=1433 |
| socket.create_connection | ਇੱਕ Python ਕਮਾਂਡ ਇੱਕ ਖਾਸ ਸਰਵਰ ਅਤੇ ਪੋਰਟ ਨਾਲ ਇੱਕ TCP ਕੁਨੈਕਸ਼ਨ ਸਥਾਪਤ ਕਰਨ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਸੰਦਰਭ ਵਿੱਚ, ਇਹ ਜਾਂਚ ਕਰਨ ਲਈ ਕੰਮ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਕਿ ਕੀ SQL ਸਰਵਰ ਉਦਾਹਰਣ ਨੈੱਟਵਰਕ ਉੱਤੇ ਪਹੁੰਚਯੋਗ ਹੈ ਜਾਂ ਨਹੀਂ। ਉਦਾਹਰਨ: socket.create_connection((ਸਰਵਰ, ਪੋਰਟ), ਸਮਾਂ ਸਮਾਪਤ=5); |
| New-Object System.Net.Sockets.TcpClient | ਇੱਕ PowerShell ਕਮਾਂਡ ਪੋਰਟ ਕਨੈਕਟੀਵਿਟੀ ਦੀ ਜਾਂਚ ਲਈ ਇੱਕ TCP ਕਲਾਇੰਟ ਬਣਾਉਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। ਇਹ ਤਸਦੀਕ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ ਕਿ ਕੀ ਜ਼ਰੂਰੀ ਮਿਰਰਿੰਗ ਪੋਰਟ ਸਰਵਰਾਂ ਦੇ ਵਿਚਕਾਰ ਖੁੱਲੇ ਅਤੇ ਪਹੁੰਚਯੋਗ ਹਨ। ਉਦਾਹਰਨ: $tcpClient = New-Object System.Net.Sockets.TcpClient($server, $port) |
| SELECT * FROM sys.database_mirroring | ਇਹ SQL ਕਮਾਂਡ ਡੇਟਾਬੇਸ ਮਿਰਰਿੰਗ ਸੈਸ਼ਨ ਦੀ ਸਥਿਤੀ ਨੂੰ ਮੁੜ ਪ੍ਰਾਪਤ ਕਰਦੀ ਹੈ, ਇਹ ਨਿਦਾਨ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਦੀ ਹੈ ਕਿ ਕੀ ਮਿਰਰਿੰਗ ਸੈੱਟਅੱਪ ਸਹੀ ਢੰਗ ਨਾਲ ਸਥਾਪਤ ਹੈ ਜਾਂ ਸਮੱਸਿਆਵਾਂ ਦਾ ਸਾਹਮਣਾ ਕਰ ਰਿਹਾ ਹੈ। ਉਦਾਹਰਨ: SELECT * FROM sys.database_mirroring; |
ਮਿਰਰਿੰਗ ਐਰਰ ਰੈਜ਼ੋਲਿਊਸ਼ਨ ਸਕ੍ਰਿਪਟਾਂ ਦਾ ਵਿਸਤ੍ਰਿਤ ਬ੍ਰੇਕਡਾਊਨ
ਪਹਿਲੀਆਂ ਉਦਾਹਰਨਾਂ ਵਿੱਚ ਦਿੱਤੀ ਗਈ ਪਹਿਲੀ ਸਕ੍ਰਿਪਟ ਵਰਤਦੀ ਹੈ SQL ਸਰਵਰ ਵਿੱਚ ਮਿਰਰਿੰਗ ਗਲਤੀ ਨੂੰ ਕੌਂਫਿਗਰ ਕਰਨ ਅਤੇ ਹੱਲ ਕਰਨ ਲਈ ਕਮਾਂਡਾਂ। ਸਕ੍ਰਿਪਟ ਦਾ ਸਭ ਤੋਂ ਮਹੱਤਵਪੂਰਨ ਹਿੱਸਾ ਰਚਨਾ ਅਤੇ ਸੰਰਚਨਾ ਹੈ . ਇਹ ਐਂਡਪੁਆਇੰਟ ਉਹ ਨੈੱਟਵਰਕ ਇੰਟਰਫੇਸ ਹਨ ਜਿਨ੍ਹਾਂ ਰਾਹੀਂ SQL ਸਰਵਰ ਉਦਾਹਰਨਾਂ ਮਿਰਰਿੰਗ ਦੌਰਾਨ ਸੰਚਾਰ ਕਰਦੀਆਂ ਹਨ। ਹੁਕਮ ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ ਕਿ ਦੋਵੇਂ ਸਰਵਰਾਂ ਦੇ ਅੰਤਮ ਬਿੰਦੂ "ਸਟਾਰਟਡ" ਸਥਿਤੀ ਵਿੱਚ ਹਨ, ਸੰਚਾਰ ਹੋਣ ਦੀ ਆਗਿਆ ਦਿੰਦੇ ਹੋਏ। ਦ ਪਾਰਟਨਰ ਸੈੱਟ ਕਰੋ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਫਿਰ ਡੇਟਾਬੇਸ ਨੂੰ ਲਿੰਕ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਪਾਰਟਨਰ ਸਰਵਰ ਦੇ ਨੈਟਵਰਕ ਐਡਰੈੱਸ ਨੂੰ ਨਿਰਧਾਰਿਤ ਕਰਦੇ ਹੋਏ, ਜੋ ਕਿ ਦੋ SQL ਉਦਾਹਰਨਾਂ ਨੂੰ ਨੈਟਵਰਕ ਵਿੱਚ ਡੇਟਾ ਨੂੰ ਪ੍ਰਤੀਬਿੰਬਤ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ।
ਦੂਜੀ ਸਕ੍ਰਿਪਟ ਇੱਕ PowerShell ਹੱਲ ਹੈ ਜੋ ਦੋ ਸਰਵਰਾਂ ਵਿਚਕਾਰ ਨੈਟਵਰਕ ਕਨੈਕਟੀਵਿਟੀ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ। ਪਾਵਰਸ਼ੇਲ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ ਇੱਕ TCP ਕਲਾਇੰਟ ਬਣਾਉਣ ਲਈ ਕਮਾਂਡ ਜੋ ਕਿ ਦਿੱਤੇ IP ਐਡਰੈੱਸ ਅਤੇ ਪੋਰਟ ਨਾਲ ਜੁੜਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ। ਇਹ ਪੁਸ਼ਟੀ ਕਰਨ ਦਾ ਇੱਕ ਕੁਸ਼ਲ ਤਰੀਕਾ ਹੈ ਕਿ ਲੋੜੀਂਦੀਆਂ ਪੋਰਟਾਂ (SQL ਸਰਵਰ ਲਈ 1433 ਅਤੇ ਮਿਰਰਿੰਗ ਲਈ 5022) ਖੁੱਲ੍ਹੀਆਂ ਅਤੇ ਪਹੁੰਚਯੋਗ ਹਨ। ਇਹ ਸਕ੍ਰਿਪਟ ਖਾਸ ਤੌਰ 'ਤੇ ਫਾਇਰਵਾਲ ਜਾਂ ਨੈਟਵਰਕਿੰਗ ਮੁੱਦਿਆਂ ਦੇ ਨਿਦਾਨ ਲਈ ਉਪਯੋਗੀ ਹੈ ਜੋ ਦੋ SQL ਉਦਾਹਰਨਾਂ ਨੂੰ ਸੰਚਾਰ ਕਰਨ ਤੋਂ ਰੋਕ ਰਹੀਆਂ ਹਨ, ਇਸ ਤਰ੍ਹਾਂ .
ਤੀਜੀ ਸਕ੍ਰਿਪਟ ਫਾਇਰਵਾਲ ਸੈਟਿੰਗਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨ ਲਈ ਵਿੰਡੋਜ਼ ਕਮਾਂਡ ਪ੍ਰੋਂਪਟ ਕਮਾਂਡਾਂ ਦਾ ਲਾਭ ਲੈਂਦੀ ਹੈ। ਖਾਸ ਤੌਰ 'ਤੇ, ਦ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ SQL ਸਰਵਰ ਅਤੇ ਮਿਰਰਿੰਗ ਲਈ ਜ਼ਰੂਰੀ ਪੋਰਟਾਂ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਡੇਟਾਬੇਸ ਟ੍ਰੈਫਿਕ (ਪੋਰਟ 1433) ਅਤੇ ਮਿਰਰਿੰਗ ਟ੍ਰੈਫਿਕ (ਪੋਰਟ 5022) ਦੋਵੇਂ ਸਰਵਰਾਂ ਦੇ ਵਿਚਕਾਰ ਸੁਤੰਤਰ ਰੂਪ ਵਿੱਚ ਵਹਿ ਸਕਦੇ ਹਨ। ਨਾਲ ਫਾਇਰਵਾਲ ਨੂੰ ਅਸਥਾਈ ਤੌਰ 'ਤੇ ਅਯੋਗ ਕਰਕੇ ਕਮਾਂਡ, ਸਕ੍ਰਿਪਟ ਇਹ ਪੁਸ਼ਟੀ ਕਰ ਸਕਦੀ ਹੈ ਕਿ ਕੀ ਫਾਇਰਵਾਲ ਨੈੱਟਵਰਕ ਐਕਸੈਸ ਮੁੱਦੇ ਦਾ ਮੂਲ ਕਾਰਨ ਹੈ। ਇਹ ਹੱਲ ਖਾਸ ਤੌਰ 'ਤੇ ਮਹੱਤਵਪੂਰਨ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਇੱਕ ਸੁਰੱਖਿਅਤ ਵਾਤਾਵਰਣ ਵਿੱਚ ਸਰਵਰ ਸੰਚਾਰ ਸਮੱਸਿਆਵਾਂ ਦਾ ਨਿਪਟਾਰਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
ਅੰਤ ਵਿੱਚ, ਪਾਈਥਨ ਸਕ੍ਰਿਪਟ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ ਦੋ ਸਰਵਰਾਂ ਵਿਚਕਾਰ ਨੈੱਟਵਰਕ ਜਾਂਚ ਕਰਨ ਲਈ ਫੰਕਸ਼ਨ। ਇਹ ਸਕ੍ਰਿਪਟ ਇਹ ਪ੍ਰਮਾਣਿਤ ਕਰਨ ਦਾ ਇੱਕ ਤੇਜ਼ ਅਤੇ ਪ੍ਰਭਾਵੀ ਤਰੀਕਾ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ ਕਿ ਕੀ ਸਰਵਰ ਲੋੜੀਂਦੇ TCP ਪੋਰਟਾਂ 'ਤੇ ਇੱਕ ਦੂਜੇ ਤੱਕ ਪਹੁੰਚ ਸਕਦੇ ਹਨ। ਇਹ ਇੱਕ ਕੁਨੈਕਸ਼ਨ ਸਥਾਪਤ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ, ਅਤੇ ਜੇਕਰ ਸਫਲ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਪੁਸ਼ਟੀ ਕਰਦਾ ਹੈ ਕਿ ਨੈੱਟਵਰਕ ਸੈੱਟਅੱਪ ਸਹੀ ਹੈ। ਨੈਟਵਰਕ-ਸਬੰਧਤ ਮੁੱਦਿਆਂ ਨੂੰ ਸੰਭਾਲਣ ਵਿੱਚ ਪਾਈਥਨ ਦੀ ਸਰਲਤਾ ਇਸ ਨੂੰ ਕਨੈਕਟੀਵਿਟੀ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਇੱਕ ਵਧੀਆ ਵਿਕਲਪ ਬਣਾਉਂਦੀ ਹੈ, ਖਾਸ ਤੌਰ 'ਤੇ ਅਜਿਹੇ ਵਾਤਾਵਰਣ ਵਿੱਚ ਜਿੱਥੇ ਹੋਰ ਸਾਧਨ ਉਪਲਬਧ ਨਹੀਂ ਹਨ ਜਾਂ ਵਰਤਣ ਲਈ ਮੁਸ਼ਕਲ ਹਨ। ਇਕੱਠੇ ਮਿਲ ਕੇ, ਇਹ ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ ਹੱਲ ਕਰਨ ਲਈ ਇੱਕ ਵਿਆਪਕ ਪਹੁੰਚ ਪੇਸ਼ ਕਰਦੀਆਂ ਹਨ ਗਲਤੀ ਅਤੇ SQL ਸਰਵਰ ਉਦਾਹਰਨਾਂ ਵਿਚਕਾਰ ਨਿਰਵਿਘਨ ਸੰਚਾਰ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣਾ।
ਹੱਲ 1: SQL ਸਰਵਰ ਡੇਟਾਬੇਸ ਮਿਰਰਿੰਗ (T-SQL ਪਹੁੰਚ) ਵਿੱਚ ਗਲਤੀ 1418 ਨੂੰ ਠੀਕ ਕਰਨਾ
ਇਹ ਹੱਲ ਟ੍ਰਾਂਜੈਕਟ-SQL (T-SQL) ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ ਤਾਂ ਜੋ ਅੰਤਮ ਬਿੰਦੂਆਂ ਨੂੰ ਕੌਂਫਿਗਰ ਕਰਕੇ, ਕਨੈਕਸ਼ਨਾਂ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਕੇ, ਅਤੇ ਸਰਵਰ ਪਤਿਆਂ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਕੇ ਡੇਟਾਬੇਸ ਮਿਰਰਿੰਗ ਮੁੱਦਿਆਂ ਨੂੰ ਹੱਲ ਕੀਤਾ ਜਾ ਸਕੇ।
-- Enable server to listen on the specified portsALTER ENDPOINT [Mirroring]STATE = STARTED;GO-- Ensure both databases are in FULL recovery modeALTER DATABASE YourDatabaseNameSET RECOVERY FULL;GO-- Create mirroring endpoints on both serversCREATE ENDPOINT [Mirroring_Endpoint]STATE = STARTEDAS TCP (LISTENER_PORT = 5022)FOR DATABASE_MIRRORING (ROLE = PARTNER);GO-- Grant CONNECT permissions to the login accountGRANT CONNECT ON ENDPOINT::[Mirroring_Endpoint]TO [DOMAIN\UserAccount];GO-- Set up mirroring using T-SQL commandALTER DATABASE YourDatabaseNameSET PARTNER = 'TCP://192.168.0.85:5022';GO-- Verify the status of the mirroring configurationSELECT * FROM sys.database_mirroring;GO
ਹੱਲ 2: SQL ਸਰਵਰ ਪੋਰਟ ਅਸੈਸਬਿਲਟੀ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ PowerShell ਸਕ੍ਰਿਪਟ
ਇਹ ਹੱਲ ਸਰਵਰਾਂ ਵਿਚਕਾਰ ਪੋਰਟ ਕਨੈਕਟੀਵਿਟੀ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ PowerShell ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ, ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਿ ਲੋੜੀਂਦੀਆਂ ਪੋਰਟਾਂ ਖੁੱਲ੍ਹੀਆਂ ਹਨ ਅਤੇ ਸੁਣ ਰਹੀਆਂ ਹਨ।
# Define server IPs and ports$server1 = "192.168.0.80"$server2 = "192.168.0.85"$port = 5022# Function to test port connectivityfunction Test-Port {param([string]$server, [int]$port)try {$tcpClient = New-Object System.Net.Sockets.TcpClient($server, $port)Write-Host "$server on port $port is reachable."$tcpClient.Close()} catch {Write-Host "$server on port $port is not reachable."}}# Test both serversTest-Port -server $server1 -port $portTest-Port -server $server2 -port $port
ਹੱਲ 3: SQL ਸਰਵਰ ਗਲਤੀ 1418 ਫਿਕਸ (ਫਾਇਰਵਾਲ ਕੌਂਫਿਗਰੇਸ਼ਨ)
ਇਹ ਪਹੁੰਚ ਫਾਇਰਵਾਲ ਕੌਂਫਿਗਰੇਸ਼ਨਾਂ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਵਿੰਡੋਜ਼ ਕਮਾਂਡ ਪ੍ਰੋਂਪਟ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ, ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਿ ਲੋੜੀਂਦੀਆਂ ਪੋਰਟਾਂ (1433, 5022) ਦੋਵਾਂ ਸਰਵਰਾਂ 'ਤੇ ਖੁੱਲ੍ਹੀਆਂ ਹਨ।
-- Check if SQL Server and mirroring ports are opennetsh advfirewall firewall add rule name="SQLPort" dir=in action=allow protocol=TCP localport=1433netsh advfirewall firewall add rule name="MirrorPort" dir=in action=allow protocol=TCP localport=5022-- Disable firewall temporarily for testing purposesnetsh advfirewall set allprofiles state off-- Enable firewall again after testingnetsh advfirewall set allprofiles state on
ਹੱਲ 4: ਸਰਵਰਾਂ ਦੇ ਵਿਚਕਾਰ TCP ਕਨੈਕਸ਼ਨ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਨ ਲਈ ਪਾਈਥਨ ਸਕ੍ਰਿਪਟ
ਇਹ ਹੱਲ ਪ੍ਰਮਾਣਿਤ ਕਰਨ ਲਈ ਪਾਈਥਨ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ ਕਿ ਕੀ SQL ਸਰਵਰ ਉਦਾਹਰਨਾਂ TCP ਕੁਨੈਕਸ਼ਨਾਂ ਦੀ ਜਾਂਚ ਕਰਕੇ ਨੈੱਟਵਰਕ 'ਤੇ ਸੰਚਾਰ ਕਰ ਸਕਦੀਆਂ ਹਨ।
import socket# Define server IPs and portserver1 = '192.168.0.80'server2 = '192.168.0.85'port = 5022# Function to check connectivitydef check_connection(server, port):try:sock = socket.create_connection((server, port), timeout=5)print(f'Connection successful to {server}:{port}')sock.close()except socket.error:print(f'Cannot connect to {server}:{port}')# Check both serverscheck_connection(server1, port)check_connection(server2, port)
ਹੱਲ 5: SQL ਸਰਵਰ ਪ੍ਰਬੰਧਨ ਸਟੂਡੀਓ (SSMS) GUI ਸੰਰਚਨਾ
ਇਹ ਹੱਲ ਉਹਨਾਂ ਉਪਭੋਗਤਾਵਾਂ ਲਈ SSMS GUI ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਮਿਰਰਿੰਗ ਸਥਾਪਤ ਕਰਦਾ ਹੈ ਜੋ ਕਮਾਂਡ-ਲਾਈਨ ਇੰਟਰਫੇਸ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰਨਾ ਪਸੰਦ ਕਰਦੇ ਹਨ।
1. Open SQL Server Management Studio (SSMS).2. Right-click your database -> Tasks -> Mirror...3. Click Configure Security and follow the wizard.4. Ensure both Principal and Mirror servers are correct.5. Set the port for the mirroring endpoints to 5022.6. Complete the configuration and click Start Mirroring.7. Verify the mirroring status by checking the "Database Properties" window.
SQL ਸਰਵਰ ਮਿਰਰਿੰਗ ਵਿੱਚ ਨੈੱਟਵਰਕ ਅਤੇ ਸੁਰੱਖਿਆ ਚੁਣੌਤੀਆਂ ਦੀ ਪੜਚੋਲ ਕਰਨਾ
ਸਥਾਪਤ ਕਰਨ ਵੇਲੇ , ਇੱਕ ਪਹਿਲੂ ਨੂੰ ਅਕਸਰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਨੈੱਟਵਰਕ ਸੰਰਚਨਾ ਅਤੇ ਸੁਰੱਖਿਆ ਸੈਟਿੰਗਾਂ ਦੀ ਭੂਮਿਕਾ। ਗਲਤੀ 1418, ਇਹ ਦਰਸਾਉਂਦੀ ਹੈ ਕਿ ਸਰਵਰ ਨੈੱਟਵਰਕ ਪਤੇ 'ਤੇ ਨਹੀਂ ਪਹੁੰਚਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਅਕਸਰ ਅੰਡਰਲਾਈੰਗ ਨੈੱਟਵਰਕ ਸਮੱਸਿਆਵਾਂ ਕਾਰਨ ਹੁੰਦਾ ਹੈ। ਇੱਥੋਂ ਤੱਕ ਕਿ ਜਦੋਂ ਸਹੀ ਪੋਰਟਾਂ (1433 ਅਤੇ 5022) ਖੋਲ੍ਹੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਅਤੇ ਫਾਇਰਵਾਲ ਅਸਮਰੱਥ ਹੁੰਦੇ ਹਨ, ਤਾਂ ਹੋਰ ਨੈਟਵਰਕ ਤੱਤ ਜਿਵੇਂ ਕਿ ਰੂਟਿੰਗ ਅਤੇ DNS ਸੰਰਚਨਾ ਸੰਚਾਰ ਅਸਫਲਤਾਵਾਂ ਦਾ ਕਾਰਨ ਬਣ ਸਕਦੇ ਹਨ। ਇਹ ਯਕੀਨੀ ਬਣਾਉਣਾ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ ਦੋਵੇਂ ਸਰਵਰ ਇੱਕ ਦੂਜੇ ਦੇ IP ਪਤਿਆਂ ਨੂੰ ਸਹੀ ਢੰਗ ਨਾਲ ਹੱਲ ਕਰਦੇ ਹਨ, ਖਾਸ ਕਰਕੇ ਮਲਟੀ-ਸਬਨੈੱਟ ਵਾਤਾਵਰਨ ਵਿੱਚ।
ਇਕ ਹੋਰ ਚੁਣੌਤੀ ਸ਼ਾਮਲ ਹੈ ਮਿਰਰਿੰਗ ਸੈੱਟਅੱਪ ਦੌਰਾਨ ਸੈਟਿੰਗਾਂ। ਡਾਟਾਬੇਸ ਮਿਰਰਿੰਗ ਲਈ ਜ਼ਰੂਰੀ ਹੈ ਕਿ ਪ੍ਰਿੰਸੀਪਲ ਅਤੇ ਮਿਰਰ ਸਰਵਰ ਦੋਵੇਂ ਪ੍ਰਮਾਣ-ਪੱਤਰਾਂ ਜਾਂ ਡੋਮੇਨ-ਅਧਾਰਿਤ ਪ੍ਰਮਾਣਿਕਤਾ (ਕਰਬੇਰੋਜ਼) ਰਾਹੀਂ ਇੱਕ ਦੂਜੇ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਨ। ਜੇਕਰ ਇਹ ਸੈੱਟਅੱਪ ਸਹੀ ਢੰਗ ਨਾਲ ਕੌਂਫਿਗਰ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ, ਜਾਂ ਜੇਕਰ ਦੋ ਸਰਵਰਾਂ ਵਿਚਕਾਰ ਸੁਰੱਖਿਆ ਪ੍ਰੋਟੋਕੋਲ ਵਿੱਚ ਕੋਈ ਮੇਲ ਨਹੀਂ ਹੈ, ਤਾਂ ਗਲਤੀ 1418 ਹੋ ਸਕਦੀ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, SQL ਸਰਵਰ ਸੇਵਾ ਖਾਤਿਆਂ ਨੂੰ ਦੋਵਾਂ ਮਸ਼ੀਨਾਂ 'ਤੇ ਸਹੀ ਅਨੁਮਤੀਆਂ ਹੋਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ, ਖਾਸ ਕਰਕੇ ਮਿਰਰਿੰਗ ਐਂਡਪੁਆਇੰਟਸ ਤੱਕ ਪਹੁੰਚ।
ਅੰਤ ਵਿੱਚ, ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਦੀ ਚੋਣ ਇਹ ਵੀ ਪ੍ਰਭਾਵਿਤ ਕਰ ਸਕਦੀ ਹੈ ਕਿ ਮਿਰਰਿੰਗ ਕਿਵੇਂ ਵਿਵਹਾਰ ਕਰਦੀ ਹੈ। ਵਿੰਡੋਜ਼ ਦੇ ਵੱਖ-ਵੱਖ ਸੰਸਕਰਣ TCP ਕਨੈਕਸ਼ਨਾਂ ਨੂੰ ਵੱਖਰੇ ਢੰਗ ਨਾਲ ਸੰਭਾਲ ਸਕਦੇ ਹਨ, ਖਾਸ ਤੌਰ 'ਤੇ ਉਹ ਫਾਇਰਵਾਲ ਨਿਯਮਾਂ ਅਤੇ ਨੈੱਟਵਰਕ ਟ੍ਰੈਫਿਕ ਰੂਟਿੰਗ ਦਾ ਪ੍ਰਬੰਧਨ ਕਿਵੇਂ ਕਰਦੇ ਹਨ। ਜੇਕਰ ਕਿਸੇ ਵੀ ਸਰਵਰ ਦੇ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਵਿੱਚ ਪੁਰਾਣੇ ਜਾਂ ਮੇਲ ਖਾਂਦੇ ਨੈੱਟਵਰਕ ਡਰਾਈਵਰ ਹਨ, ਤਾਂ ਸਰਵਰਾਂ ਵਿਚਕਾਰ ਸੰਚਾਰ ਅਸਫਲ ਹੋ ਸਕਦਾ ਹੈ। ਇਹ ਯਕੀਨੀ ਬਣਾਉਣਾ ਕਿ OS ਨਵੀਨਤਮ ਪੈਚਾਂ ਨਾਲ ਅੱਪ ਟੂ ਡੇਟ ਹੈ ਅਤੇ ਇਹ ਕਿ ਢੁਕਵੀਆਂ ਸੇਵਾਵਾਂ ਚੱਲ ਰਹੀਆਂ ਹਨ, ਕਨੈਕਟੀਵਿਟੀ ਮੁੱਦਿਆਂ ਜਿਵੇਂ ਕਿ ਐਰਰ 1418 ਨੂੰ ਹੱਲ ਕਰਨ ਲਈ ਮਹੱਤਵਪੂਰਨ ਹੈ।
- SQL ਸਰਵਰ ਮਿਰਰਿੰਗ ਵਿੱਚ ਗਲਤੀ 1418 ਦਾ ਕੀ ਕਾਰਨ ਹੈ?
- ਗਲਤੀ 1418 ਆਮ ਤੌਰ 'ਤੇ ਦੋ ਸਰਵਰਾਂ ਵਿਚਕਾਰ ਸੰਚਾਰ ਅਸਫਲਤਾ ਦੇ ਕਾਰਨ ਹੁੰਦੀ ਹੈ। ਇਹ ਫਾਇਰਵਾਲ ਸੈਟਿੰਗਾਂ ਦੇ ਕਾਰਨ ਹੋ ਸਕਦਾ ਹੈ, ਗਲਤ , ਜਾਂ ਨੈੱਟਵਰਕ ਕਨੈਕਟੀਵਿਟੀ ਸਮੱਸਿਆਵਾਂ।
- ਮੈਂ ਕਿਵੇਂ ਜਾਂਚ ਕਰ ਸਕਦਾ ਹਾਂ ਕਿ ਕੀ ਮੇਰੇ ਪੋਰਟ SQL ਸਰਵਰ ਮਿਰਰਿੰਗ ਲਈ ਖੁੱਲ੍ਹੇ ਹਨ?
- ਦੀ ਵਰਤੋਂ ਕਰੋ ਕਮਾਂਡ ਜਾਂ ਸਕ੍ਰਿਪਟ ਜਿਵੇਂ ਕਿ PowerShell ਵਿੱਚ ਜਾਂਚ ਕਰਨ ਲਈ ਕਿ ਕੀ ਪੋਰਟ 1433 ਅਤੇ 5022 ਖੁੱਲੇ ਹਨ।
- ਕੀ ਮਿਰਰਿੰਗ ਲਈ ਦੋਵੇਂ ਸਰਵਰਾਂ ਨੂੰ ਇੱਕੋ ਡੋਮੇਨ ਵਿੱਚ ਹੋਣ ਦੀ ਲੋੜ ਹੈ?
- ਨਹੀਂ, ਪਰ ਡੋਮੇਨ ਪ੍ਰਮਾਣਿਕਤਾ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਸਰਲ ਬਣਾ ਸਕਦੀ ਹੈ। ਨਹੀਂ ਤਾਂ, ਤੁਹਾਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰਨ ਲਈ ਸਰਟੀਫਿਕੇਟ-ਅਧਾਰਿਤ ਪ੍ਰਮਾਣਿਕਤਾ ਦੀ ਵਰਤੋਂ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ .
- ਡੇਟਾਬੇਸ ਮਿਰਰਿੰਗ ਵਿੱਚ ਅੰਤਮ ਬਿੰਦੂ ਦੀ ਕੀ ਭੂਮਿਕਾ ਹੈ?
- ਦ ਕਮਾਂਡ ਨੈੱਟਵਰਕ ਇੰਟਰਫੇਸ ਬਣਾਉਂਦਾ ਹੈ ਜੋ ਮਿਰਰਿੰਗ ਦੌਰਾਨ SQL ਸਰਵਰ ਉਦਾਹਰਨਾਂ ਨੂੰ ਸੰਚਾਰ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ। ਹਰੇਕ ਸਰਵਰ ਵਿੱਚ ਇੱਕ ਕਾਰਜਸ਼ੀਲ ਮਿਰਰਿੰਗ ਐਂਡਪੁਆਇੰਟ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।
- ਕੀ ਮੈਂ ਵੱਖ-ਵੱਖ SQL ਸਰਵਰ ਸੰਸਕਰਣਾਂ 'ਤੇ ਡੇਟਾਬੇਸ ਨੂੰ ਮਿਰਰ ਕਰ ਸਕਦਾ ਹਾਂ?
- ਨਹੀਂ, ਡਾਟਾਬੇਸ ਮਿਰਰਿੰਗ ਲਈ ਇਹ ਜ਼ਰੂਰੀ ਹੈ ਕਿ ਦੋਵੇਂ SQL ਸਰਵਰ ਉਦਾਹਰਨਾਂ ਇੱਕੋ ਵਰਜਨ ਅਤੇ ਸੰਸਕਰਨ 'ਤੇ ਹੋਣ ਤਾਂ ਜੋ ਸਹੀ ਢੰਗ ਨਾਲ ਕੰਮ ਕੀਤਾ ਜਾ ਸਕੇ।
ਡਾਟਾਬੇਸ ਮਿਰਰਿੰਗ ਤਰੁਟੀਆਂ ਜਿਵੇਂ ਕਿ ਐਰਰ 1418 ਅਕਸਰ ਸਰਵਰਾਂ ਵਿਚਕਾਰ ਨੈੱਟਵਰਕਿੰਗ ਸਮੱਸਿਆਵਾਂ ਕਾਰਨ ਹੁੰਦੀਆਂ ਹਨ। ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਨਾ ਕਿ ਸਹੀ ਪੋਰਟ ਖੁੱਲ੍ਹੀਆਂ ਹਨ, ਫਾਇਰਵਾਲਾਂ ਦੀ ਸੰਰਚਨਾ ਕੀਤੀ ਗਈ ਹੈ, ਅਤੇ ਅੰਤਮ ਬਿੰਦੂ ਸਹੀ ਢੰਗ ਨਾਲ ਸਥਾਪਤ ਕੀਤੇ ਗਏ ਹਨ, ਇਸ ਮੁੱਦੇ ਨੂੰ ਹੱਲ ਕਰ ਸਕਦੇ ਹਨ।
ਇਸ ਤੋਂ ਇਲਾਵਾ, PowerShell ਵਰਗੇ ਟੂਲਸ ਨਾਲ ਨੈੱਟਵਰਕ ਪਹੁੰਚ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਨਾ ਅਤੇ ਸਰਵਰਾਂ ਵਿਚਕਾਰ ਪ੍ਰਮਾਣਿਕਤਾ ਪ੍ਰੋਟੋਕੋਲ ਇਕਸਾਰ ਹੋਣ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣਾ ਤੁਹਾਡੀ ਸਫਲਤਾ ਦੀਆਂ ਸੰਭਾਵਨਾਵਾਂ ਨੂੰ ਸੁਧਾਰੇਗਾ। ਇਹਨਾਂ ਕਦਮਾਂ ਦੀ ਪਾਲਣਾ ਕਰਨ ਨਾਲ ਉੱਚ-ਪ੍ਰਦਰਸ਼ਨ ਕਾਰਜਾਂ ਲਈ ਭਰੋਸੇਯੋਗ SQL ਸਰਵਰ ਮਿਰਰਿੰਗ ਪ੍ਰਾਪਤ ਕਰਨ ਵਿੱਚ ਮਦਦ ਮਿਲ ਸਕਦੀ ਹੈ।
- ਐਰਰ 1418 ਅਤੇ ਐਂਡਪੁਆਇੰਟ ਸੈਟਿੰਗਾਂ ਸਮੇਤ SQL ਸਰਵਰ ਮਿਰਰਿੰਗ ਕੌਂਫਿਗਰੇਸ਼ਨ ਅਤੇ ਸਮੱਸਿਆ ਨਿਪਟਾਰਾ ਬਾਰੇ ਵੇਰਵੇ ਇੱਥੇ ਲੱਭੇ ਜਾ ਸਕਦੇ ਹਨ ਮਾਈਕਰੋਸਾਫਟ SQL ਦਸਤਾਵੇਜ਼ .
- ਫਾਇਰਵਾਲ ਨਿਯਮਾਂ ਨੂੰ ਕੌਂਫਿਗਰ ਕਰਨ ਅਤੇ SQL ਸਰਵਰ ਮਿਰਰਿੰਗ ਲਈ ਨੈਟਵਰਕ ਸਮੱਸਿਆ ਨਿਪਟਾਰਾ ਕਰਨ ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ ਨੂੰ ਇੱਥੇ ਐਕਸੈਸ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਵਿੰਡੋਜ਼ ਫਾਇਰਵਾਲ ਕੌਂਫਿਗਰੇਸ਼ਨ .
- SQL ਸਰਵਰ ਉਦਾਹਰਨਾਂ ਦੇ ਵਿਚਕਾਰ ਪੋਰਟ ਟੈਸਟਿੰਗ ਅਤੇ ਨੈੱਟਵਰਕ ਪੁਸ਼ਟੀਕਰਨ ਲਈ PowerShell ਸਕ੍ਰਿਪਟਾਂ 'ਤੇ ਉਪਲਬਧ ਹਨ ਪਾਵਰਸ਼ੇਲ ਦਸਤਾਵੇਜ਼ .
- ਸਰਵਰ ਕਨੈਕਟੀਵਿਟੀ ਦੀ ਜਾਂਚ ਵਿੱਚ ਵਰਤੀਆਂ ਜਾਣ ਵਾਲੀਆਂ ਪਾਈਥਨ ਸਾਕਟ ਪ੍ਰੋਗਰਾਮਿੰਗ ਤਕਨੀਕਾਂ ਲਈ, ਵੇਖੋ ਪਾਈਥਨ ਸਾਕਟ ਮੋਡੀਊਲ .