diff --git a/ngcp-update-db-schema b/ngcp-update-db-schema
index 98bed008..0cb926a5 100755
--- a/ngcp-update-db-schema
+++ b/ngcp-update-db-schema
@@ -58,10 +58,10 @@ class Config:
                           this option is taken from either
                           AUTOMATED_INSTALL_MODE os.environ
                           (backward compatibility) or from the args
-        skip_sync_db (bool): skip db synchronisation (if applicable)
-                             this option is taken from either SKIP_SYNC_DB
-                             os.environ (backward compatibility)
-                             or from the args
+        skip_ro_db_sync (bool): skip db synchronisation (if applicable)
+                                this option is taken from either SKIP_SYNC_DB
+                                os.environ (backward compatibility)
+                                or from the args
         debug (bool): debug/verbose mode
         mode (str): 'up' mode or 'down' mode
         to_revision (int): if the script must apply/remove up to
@@ -115,14 +115,15 @@ class Config:
 
     # default config options
     automated: bool = False
-    skip_sync_db: bool = False
+    skip_ro_db_sync: bool = False
     debug: bool = False
     mode: str = 'up'
     to_revision: int = 0
     force: bool = False
     batch_mode: bool = False
-    supported_args: List[str] = ['automated', 'debug', 'force', 'mode',
-                                 'skip_sync_db', 'to_revision', 'batch_mode']
+    supported_args: List[str] = ['automated', 'batch_mode', 'debug', 'force',
+                                 'mode', 'skip_ro_db_sync', 'db_socket',
+                                 'to_revision']
 
     # internal attributes
     _args: Any = None
@@ -326,12 +327,13 @@ def connect_db() -> Connection:  # type: ignore
 
     db_backup_config_file: Optional[str] = None
     if not os.access(str(db_socket), os.R_OK):
+        db_backup_config_file = db_connect_method = config.db_backup_conf_file
+
         debug(c_str(f"""
             socket file {db_socket} is not readable,
             using {db_backup_config_file}
         """))
 
-        db_backup_config_file = db_connect_method = config.db_backup_conf_file
         db_socket = None
 
         try:
@@ -449,7 +451,7 @@ def parse_args() -> None:
 
     parser.add_argument(
         '--skip-ro-db-sync', '-s',
-        dest='skip_db_sync',
+        dest='skip_ro_db_sync',
         action='store_true',
         help="""
         (Carrier only): skip automatic ngcp-sync-db invokation on proxy
@@ -466,6 +468,15 @@ def parse_args() -> None:
         they are accumulated and applied all at once.
         """)
 
+    parser.add_argument(
+        '--db-socket',
+        dest='db_socket',
+        type=str,
+        help=f"""
+        Database socket file to use instead of the default one
+        ({config.db_socket})
+        """)
+
     args = parser.parse_args()
     for arg in config.supported_args:
         if hasattr(args, arg):
@@ -474,10 +485,12 @@ def parse_args() -> None:
             config.automated = str_to_bool(
                 os.getenv('AUTOMATED_INSTALL_MODE', '')
             )
-        elif (arg == 'skip_sync_db'):
-            config.skip_sync_db = str_to_bool(
+        elif (arg == 'skip_ro_db_sync'):
+            config.skip_ro_db_sync = str_to_bool(
                 os.getenv('SKIP_SYNC_DB', '')
             )
+        elif (arg == 'db_socket'):
+            config.db_socket = os.getenv('MYSQL_SOCKET', config.db_socket)
     config._args = args
 
 
@@ -1035,7 +1048,7 @@ def sync_ro_db() -> None:
         None
 
     """
-    if config.skip_sync_db or not config._not_replicated_was_applied:
+    if config.skip_ro_db_sync or not config._not_replicated_was_applied:
         debug(c_str("""
             skip sync R/O database preparation as
             'not_replicated' scripts were not applied