Saya memiliki sebagai pengembang stasiun laptop dengan OS Windows XP Professional Edition, Paket Layanan 3.
Saya telah mengunduh dan menginstal paket perbaikan 4 IBM DB2 UDB 9.7, edisi Express-C.
Saya memiliki akun Windows lokal bernama db2admin yang saya gunakan sebagai administrator basis data lokal untuk pemasangan DB2 lokal saya (hanya untuk tujuan pengembang).
Saya bisa menjalankan yang berikut tanpa masalah saat menjalankan Command Window:
db2 attach to db2 user db2admin using xxxxxxxxxx
Itu memungkinkan saya untuk melampirkan contoh saya yang disebut DB2.
Saya dapat menjalankan perintah membuat database saya.
Saya kemudian mencoba untuk terhubung ke database untuk memberikan semua hak istimewa untuk akun db2admin saya di 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;
Namun ketika saya menjalankannya, DB2 memberi tahu saya bahwa akun pengguna windows saya yang sebenarnya (synprgcma) tidak memiliki wewenang untuk memberikan otoritas kepada pengguna db2admin.
Jadi jika saya mengubah skrip kedua sebagai berikut:
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;
Kemudian DB2 memberi tahu saya bahwa db2admin tidak dapat mencabut atau memberikan otoritas pada dirinya sendiri (sebenarnya ini memberitahu saya bahwa id tidak dapat mencabut atau memberikan otoritas pada dirinya sendiri).
Jadi saya bingung. Saya tidak memiliki masalah dengan instalasi DB2 saya sebelumnya (9.5, dan saya tidak ingat paket perbaikan saya sebelumnya).
Bagaimana cara saya memberikan otoritas yang diperlukan ke akun admin lokal? Saya yakin saya perlu ini untuk menjalankan perintah bind yang perlu saya lakukan selanjutnya:
db2 CONNECT TO MYDB;
db2 bind @db2cli.lst blocking all grant public sqlerror continue CLIPKG 20;
db2 CONNECT RESET;
Bantuan apa pun akan dihargai.
Sunting: Saya telah menemukan beberapa tautan berikut yang terkait dengan ini. Masih belum yakin bagaimana cara membuatnya bekerja, tetapi setidaknya saya telah menemukan beberapa dokumentasi.
- 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