An ESD #1 enhancement includes a stored procedure that adds an external login for DBA to write server.
call sp_iqmpxcreatewriterlogin ( 'remote_user', 'remote_password' )
sp_iqmpxcreatewriterlogin 'remote_user', 'remote_password'
sp_iqmpxcreatewriterlogin remote_user, remote_password
DBA authority required.
remote_user User’s login name on the write server, which acts as the external login of DBA from the query server.
remote_password User’s password on the write server, which acts as the external login of DBA from the query server.
In order to propagate passwords from a query server to a write server and subsequently other nodes, Sybase IQ calls an RPC on the write server from the query server. The RPC uses user 'DBA' account to establish a connection to the write server. If you modify the user 'DBA' password on the query server or set the 'DBA' password to NULL, the RPC can no longer connect to the write server.
You must execute sp_iqmpxcreatewriterlogin on the reader so that it can use an alternate account for the remote connection to the write server. The created external login is local to each query server and is deleted after the Multiplex synchronization unless a post synchronization script ('DBA.sp_mpxcfg_' + @@servername) is defined and called to restore it.
The following errors might occur. Causes are listed after each error.
"Permission denied: you do not have permission to execute the procedure "sp_iqmpxcreatewriterlogin"
Cause: A user without DBA privilege tried to execute the sp_iqmpxcreatewriterlogin procedure.
RAISERROR executed: The stored procedure is not called from a query server. Sybase error code=17823, SQLState="WW012"
Cause: This procedure can only be called from a query server.
"RAISERROR executed: Userid "iqremoter" is not found or could not be set as a login for write server. Sybase error code=17824, SQLState="WW012"
Causes: The passed in value to procedure parameter remote_password is null, the remote user does not exist or not have the DBA privilege, or the DBA’s password is null.
"ASA Error -110: Item 'DBA' already exists Sybase error code = 12006, SQLState = "52010"
Cause: The external login already exists for DBA to writer server. You can drop it first by calling sp_iqmpxdropwriterlogin, and then call the sp_iqmpxcreatewriterlogin procedure.