Tengo como estación de desarrollador una computadora portátil con SO Windows XP Professional Edition, Service Pack 3.
He descargado e instalado el fixpack 4 de IBM DB2 UDB 9.7, de la edición Express-C.
Tengo una cuenta local de Windows llamada db2admin que estoy usando como administrador de mi base de datos local para mi instalación local de DB2 (solo para desarrolladores).
Puedo ejecutar lo siguiente sin problemas al ejecutar la ventana de comandos:
db2 attach to db2 user db2admin using xxxxxxxxxx
Eso me permite adjuntarme a mi instancia llamada DB2.
Puedo ejecutar mis comandos de creación de base de datos.
Luego intento conectarme a la base de datos para otorgar todos los privilegios para mi cuenta db2admin en DB2.
db2 CONNECT TO MYDB;
SET SCHEMA DB2ADMIN;
db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,CREATE_NOT_FENCED_ROUTINE,IMPLICIT_SCHEMA,LOAD,CREATE_EXTERNAL_ROUTINE,QUIESCE_CONNECT,SECADM ON DATABASE TO USER DB2ADMIN;
CONNECT RESET;
Sin embargo, cuando ejecuto eso, DB2 me dice que mi cuenta de usuario de Windows real (synprgcma) no tiene autoridad para otorgar autoridad al usuario db2admin.
Entonces, si cambio el segundo script a lo siguiente:
db2 CONNECT TO MYDB USER db2admin USING xxxxxxxx;
SET SCHEMA DB2ADMIN;
db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,CREATE_NOT_FENCED_ROUTINE,IMPLICIT_SCHEMA,LOAD,CREATE_EXTERNAL_ROUTINE,QUIESCE_CONNECT,SECADM ON DATABASE TO USER DB2ADMIN;
CONNECT RESET;
Luego, DB2 me dice que db2admin no puede revocar o otorgar autoridad a sí mismo (en realidad me dice que un ID no puede revocar ni otorgar autoridad a sí mismo).
Entonces estoy perplejo. No tuve este problema con mi instalación anterior de DB2 (9.5, y no recuerdo en qué fixpack estaba).
¿Cómo otorgo las autoridades necesarias a la cuenta de administrador local? Creo que necesito esto para ejecutar un comando de enlace que debo hacer a continuación:
db2 CONNECT TO MYDB;
db2 bind @db2cli.lst blocking all grant public sqlerror continue CLIPKG 20;
db2 CONNECT RESET;
Cualquier ayuda sería apreciada.
Editar: he encontrado algunos de los siguientes enlaces relacionados con esto. Todavía no estoy seguro de cómo hacerlo funcionar, pero al menos he encontrado documentación.
- http://www.db2teamblog.com/2009/06/whats-new-in-db2-97.html
- http://lpetr.org/blog/archives/simplify-the-db2-9-7-security-model
- http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=%2Fcom.ibm.db2.luw.sql.ref.doc%2Fdoc%2Fr0000958.html
- http://www.ibm.com/developerworks/forums/thread.jspa?messageID=14288459
- http://publib.boulder.ibm.com/infocenter/tivihelp/v4r1/index.jsp?topic=%2Fcom.ibm.tpc_V422.doc%2Ffqz0_t_preparing_to_install_db2_windows.html
- http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=%2Fcom.ibm.db2.luw.admin.sec.doc%2Fdoc%2Fc0055206.html
- http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=%2Fcom.ibm.db2.luw.admin.sec.doc%2Fdoc%2Fc0005479.html
fuente