Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
IBM Software Group DB2 UDB the Basics Keith E. Gardenhire [email protected] © 2005 IBM Corporation IBM Software Group Introduction DB2 UDB V8.2 Basic Database Administration 2 © 2005 IBM Corporation IBM Software Group Products DB2 Enterprise Server Edition DB2 Workgroup Server Unlimited Edition DB2 Workgroup Server Edition DB2 UDB Express Edition DB2 Personal Edition 3 © 2005 IBM Corporation IBM Software Group Data Partitioning Feature Ethernet 4 Node 1 Node 2 Node 3 Node 4 Data Data Data Data © 2005 IBM Corporation IBM Software Group Instance Manages one or more databases Must have root or Administrator Authority to create db2icrt is used to create an instance db2idrop is used to drop an instance db2iupdt is used to update the instance db2icrt -u fencedusr instance_name db2start will start an instance db2stop will stop an instance 5 © 2005 IBM Corporation IBM Software Group Creating the Database Create db database-name Creates three table spaces Creates System Catalog Tables 6 © 2005 IBM Corporation IBM Software Group Create Database Command CREATE DATABASE dbname AS alias_name 7 © 2005 IBM Corporation IBM Software Group Table Space Logical layer between Hardware and Database Comprised of one or more containers A container is a file or a directory REGULAR CREATE TABLESPACE name LARGE SYSTEM TEMPORARY USER MANAGED BY SYSTEM system-containers 8 DATABASE database-containers © 2005 IBM Corporation IBM Software Group System Containers SMS Containers USING (‘container string’) DMS Containers USING (FILE ‘container string’ number of pages) (DEVICE ‘container string’ number of pages) 9 © 2005 IBM Corporation IBM Software Group Table Space Example CREATE TABLESPACE TS1 MANAGED BY SYSTEM USING (‘/home/inst01/database/ts1’) CREATE TABLESPACE DMS01D MANAGED BY DATABASE USING (FILE ‘C:\DMS\DATABASE\DMS01D’ 1000) 10 © 2005 IBM Corporation IBM Software Group Create Tables Command Line db2 create table ARTISTS ( ARTNO SMALLINT NOT NULL, NAME VARCHAR(40), COMPANY CHAR(20), BIO CLOB (10K) NOT LOGGED, PICTURE BLOB (2700K) NOT LOGGED ) IN DMS01D INDEX IN DMS01I LONG IN DMS01L 11 © 2005 IBM Corporation IBM Software Group Create Table Script File create table warehouse (itemno smallint, warehousename char(20), qty integer ) in dms03d; The script file cr_warehouse contains the above info db2 –tvf cr_warehouse 12 © 2005 IBM Corporation IBM Software Group Table Characteristics Describe command db2 describe table ARTISTS Column Type Type name schema name Length Scale Nulls --------------- --------- ------------------ -------- ----- -----ARTNO SYSIBM SMALLINT 2 0 No NAME SYSIBM VARCHAR 40 0 Yes COMPANY SYSIBM CHARACTER 20 0 Yes BIO SYSIBM CLOB 20480 0 Yes PICTURE SYSIBM BLOB 2764800 0 Yes 13 © 2005 IBM Corporation IBM Software Group Describe Indexes 14 © 2005 IBM Corporation IBM Software Group Moving Data © 2005 IBM Corporation IBM Software Group Moving Data IMPORT EXPORT LOAD db2move 16 © 2005 IBM Corporation IBM Software Group Import / Export Import File Export 17 © 2005 IBM Corporation IBM Software Group IMPORT utility IMPORT FROM filename OF IXF DEL ASC LOBS FROM lob-path MODIFIED BY options MESSAGES INSERT INTO table-name INSERT_UPDATE REPLACE 18 REPLACE_CREATE © 2005 IBM Corporation IBM Software Group Export EXPORT TO file OF IXF MESSAGES message-file DEL WSF select statement 19 © 2005 IBM Corporation IBM Software Group LOAD 1) Load Loads data, collects index keys 2) Build creates the indexes 3) Delete Delete unique key violations place into exception tables. 4) Index Copy – copy indexes from temp table space 20 © 2005 IBM Corporation IBM Software Group LOAD Command LOAD FROM filename OF IXF ASC DEL LOBS FROM lob-path MESSAGES INSERT MODIFIED BY options message-file INTO table-name REPLACE RESTART TERMINATE 21 © 2005 IBM Corporation IBM Software Group LOAD from Cursor Create nickname sales for another database SAMPLE table SALES Create nickname employee for another database SAMPLE table EMPLOYEE DECLARE C1 CURSOR FOR SELECT SALES.SALES_PERSON, LASTNAME, FIRSTNME FROM SALES, EMPLOYEE WHERE SALES_PERSON = EMPLOYEE.LASTNAME LOAD FROM C1 OF CURSOR INSERT INTO LOCAL_SALES 22 © 2005 IBM Corporation IBM Software Group DB2MOVE db2move Database db2move db2move.lst table.ixf 23 © 2005 IBM Corporation IBM Software Group db2move syntax db2move database-name import export load tc table-creators tn table-name sn schema-names ts 24 table space-names © 2005 IBM Corporation IBM Software Group GUI Tools Using Graphical User Interface © 2005 IBM Corporation IBM Software Group Using the Control Center 26 © 2005 IBM Corporation IBM Software Group Control Center – Create Database 27 © 2005 IBM Corporation IBM Software Group Examples of Table Space CREATE TABLESPACE TS1 MANAGED BY SYSTEM USING (‘C:\SMS\MUSICKEG\TS1’) CREATE TABLESPACE DMS01D MANAGED BY DATABASE USING (FILE ‘C:\DMS\MUSICKEG\DMS01D’ 161) EXTENTSIZE 8 PREFETECHSIZE 8 CREATE TABLESPACE DMS01I MANAGED BY DATABASE USING (FILE ‘C:\DMS\MUSICKEG\DMS01I’ 48) EXTENTSIZE 4 PREFETCHSIZE 4 28 © 2005 IBM Corporation IBM Software Group Table Space Using GUI 29 © 2005 IBM Corporation IBM Software Group Table Space Using GUI (2) 30 © 2005 IBM Corporation IBM Software Group Table Space Using GUI (3) 31 © 2005 IBM Corporation IBM Software Group Table Space Using GUI (4) 32 © 2005 IBM Corporation IBM Software Group Command Editor 33 © 2005 IBM Corporation IBM Software Group Visual Explain 34 © 2005 IBM Corporation IBM Software Group Visual Explain 35 © 2005 IBM Corporation IBM Software Group Task Center 36 © 2005 IBM Corporation IBM Software Group Journal 37 © 2005 IBM Corporation IBM Software Group RECOVERY © 2005 IBM Corporation IBM Software Group Recovery Defining logs Recovery of database Recovery of a table space Offline versus Online 39 © 2005 IBM Corporation IBM Software Group Database Recovery LOGRETAIN = NO Database S0000000.log S0000001.log S0000003.log (Secondary Log) S0000004.log (Secondary Log) S00000002.log 40 © 2005 IBM Corporation IBM Software Group Database Recovery LOGRETAIN = RECOVERY Database S0000000.log S0000001.log S00000002.log S0000003.log S0000004.log 41 © 2005 IBM Corporation IBM Software Group Backup If LOGRETAIN = Recovery you may backup table space or database If LOGRETAIN = NO you may only backup database BACKUP DB database-name ONLINE to C:\backup INCLUDE LOGS 42 © 2005 IBM Corporation IBM Software Group Recovery If LOGRETAIN = NO, you may only recover the database If LOGRETAIN = RECOVERY, you may recover a table space or a database from a full database backup 43 © 2005 IBM Corporation IBM Software Group Modes of Recovery Offline Online RESTORE DB database-name FROM file TAKEN AT time ROLLFORWARD DATABASE database-name TO isotime AND STOP END OF LOGS 44 © 2005 IBM Corporation IBM Software Group HADR – High Availability Disaster Recovery Database1 Laptop computer Database_standby 45 © 2005 IBM Corporation IBM Software Group Performance and Tuning © 2005 IBM Corporation IBM Software Group Performance and Tuning Database Configuration parameters Database Structure SQL Statements 47 © 2005 IBM Corporation IBM Software Group Database Configuration parameters 48 © 2005 IBM Corporation IBM Software Group Configuration Parameters 49 © 2005 IBM Corporation IBM Software Group Buffer Pool Select * f rom Staff Buff er Pool Database 50 © 2005 IBM Corporation IBM Software Group Monitoring Buffer Pool Hit Ratio db2 get snapshot for bufferpools on database-name Bufferpool name = IBMDEFAULTBP Database name = MUSICKEG Database path = C:\DB2\NODE0000\SQL00002\ Input database alias = MUSICKEG Snapshot timestamp = 05/04/2005 13:11:37.329018 Buffer pool data logical reads = 336 Buffer pool data physical reads = 129 51 © 2005 IBM Corporation IBM Software Group Sort Heap Sorts are done in sortheap If no space for sort data is moved to TEMPSPACEn GET SNAPSHOT FOR ALL ON database 52 © 2005 IBM Corporation IBM Software Group Package Cache Dynamic SQL statements Select * from Staff where ID = 10 Select * from Staff where ID = 10 Update Staff Set Salary = Salary + 100 where ID = 10 Select * from EMPLOYEE Package Cache 53 © 2005 IBM Corporation IBM Software Group LOCK Locks are held to prevent loss of data Lock Row / Table / Table Space LOCKLIST MAXLOCKS ALTER TABLE table-name LOCKSIZE TABLE 54 © 2005 IBM Corporation IBM Software Group Show Locks 55 © 2005 IBM Corporation IBM Software Group SQL Statements Determine which statement is causing the majority of problems Determine what might be causing the problem Testing the solution 56 © 2005 IBM Corporation IBM Software Group SQL Activity Monitor 57 © 2005 IBM Corporation IBM Software Group Visual Explain 58 © 2005 IBM Corporation IBM Software Group Table Statistics 59 © 2005 IBM Corporation IBM Software Group Performance Summary Buffer pools Numerous Database Configuration parameters SQL Statement Tuning 60 © 2005 IBM Corporation IBM Software Group Security © 2005 IBM Corporation IBM Software Group Security Security is used at the operating system level Table access is through the database 62 © 2005 IBM Corporation IBM Software Group Instance Level SYSADM_GROUP SYSCTRL_GROUP SYSMAINT_GROUP SYSMON_GROUP 63 © 2005 IBM Corporation IBM Software Group GRANT / REVOKE GRANT access to an object/program REVOKE access to an object/program GRANT SELECT ON TABLE ARTISTS TO USER1 64 © 2005 IBM Corporation IBM Software Group Summary The Relational Database can be simple or complex The database structure is simple, Table spaces, Tables, etc. Recovery is straight forward Database maintenance can be automated Tuning the database is a life long endeavor 65 © 2005 IBM Corporation IBM Software Group DB2 UDB Proof of Technology July 12, 13 DB2 UDB Administration Proof of Technology IBM – McClean Tec 8401 Greensboro Drive McClean, VA 22102 Suite 120 First Floor WebSphere Information Integrator July 14, 2005 Contact: Keith E. Gardenhire [email protected] 66 © 2005 IBM Corporation IBM Software Group DB2 UDB Proof of Technology Con’t 67 © 2005 IBM Corporation