Download presentation
Presentation is loading. Please wait.
1
DB-3: Tips for Database Administrators
Gus Björklund Wizard, Progress Software Corporation
2
Ask questions as we go if I am not clear about something
Ask questions as we go if I am not clear about something. Warning: there is a mistake in these slides. DB-3: Tips for Database Administrators
3
Topics Tip Nr. 0x00 … Tip Nr. 0x16 DB-3: Tips for Database Administrators
4
If it is not broken, don’t fix it !
Tip Number 0x00 If it is not broken, don’t fix it ! DB-3: Tips for Database Administrators
5
If you do fix something, test your fix !
Tip Number 0x01 If you do fix something, test your fix ! DB-3: Tips for Database Administrators
6
Tip Number 0x02 Read the man pages
DB-3: Tips for Database Administrators
7
Read the man pages man man man [ -s section ] name Read the man pages!
DB-3: Tips for Database Administrators
8
SSH is your friend! Like Linux, more great stuff from Finland
Tip Number 0x03 SSH is your friend! Like Linux, more great stuff from Finland DB-3: Tips for Database Administrators
9
SSH SSH replaces telnet, rlogin, rcp, rsh, etc.
All connections are encrypted Use for remote access over Internet DB-3: Tips for Database Administrators
10
SSH Don’t need username, password login Can send output of
Can also use certificates for authentication Can send output of local commands to remote host remote commands to local host Can do secure file transfer scp and sftp Can tunnel other protocols (e.g. X windows) DB-3: Tips for Database Administrators
11
Simple remote command execution
$ ssh bespin ls password: 101arkt 90ajdk.txt GSI Mail News a.out a7 adb.man $ Nothing much to see here DB-3: Tips for Database Administrators
12
Remote command output to local host
$ ssh bespin "ls; echo DONE” >ls.dat password: $ cat ls.dat 101arkt 90ajdk.txt GSI Mail News a.out a7 adb.man DONE $ DB-3: Tips for Database Administrators
13
Local output piped to remote host
$ cd 4gl; tar -cf - *.p | ssh bespin "cd foo; tar -xf -" password: $ DB-3: Tips for Database Administrators
14
Remote backup piped to local file
$ ssh bespin "cd pdr; tar -cvf - ." >backup.tar password: a ./ 0K a ./Makefile 1K a ./pdrcache.c 131K a ./pdrproc.c 23K a ./pdrtrig.c 175K a ./dsmcon.c 94K a ./dsmrec.c 17K a ./dsmseq.c 15K $ DB-3: Tips for Database Administrators
15
Turning off sshd password authentication
in the file: /etc/ssh/sshd_config, do this: # Protocol 1,2 Protocol 2 . . . # Authentication: PasswordAuthentication no then save changes. restart daemon: # service sshd restart DB-3: Tips for Database Administrators
16
Enabling SSH certificate authentication
$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/Users/gus/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/gus/.ssh/id_rsa. Your public key has been saved in /Users/gus/.ssh/id_rsa.pub. The key fingerprint is: 3f:a9:2c:a6:74:5e:36:59:39:7f:ed:3f:5d:e3:a6:ee $ $ ssh-copy-id -i id_rsa DB-3: Tips for Database Administrators
17
Enabling SSH certificate authentication 2
$ cat /Users/gus/.ssh/id_rsa.pub. ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEApwswruyeETRbQ/T7ZHdNxtXIC5J41XpnJwWND4HB3WTuXPLx/Qf2S83Y3VPSgGoc+9YqmLOc/hfs/gQry+TQC9jGIPVYtW/E5PPvhh/HxTIKVc0eYMmpKlxFCjfcv0KyDcAwnd7r/wczPqw2TpurzZcXfA0c2upqufJZbnweXZtDrcs7bUwdQXskrqDj1EDBxACuH1/omZa2M/PdfFzyrRtbRMeyrfIWAfoL5RNOFsPYYOxWJxfp11tuSF7OiBUQtcbXAfS8cdHsQkJNNzSZqM6B69LvK28mlHZ8m2b5+cXICA27aUyDZfsSlMLR6rl+Ao3UByL8G+ZQBLUmhMsuRQ== $ DB-3: Tips for Database Administrators
18
More about SSH www.openssh.com http://www.ietf.org/rfc/rfc4251.txt
DB-3: Tips for Database Administrators
19
Tip Number 0x04 Windows can do SSH too
DB-3: Tips for Database Administrators
20
Server: get Cygwin http://www.cygwin.com
SSH for Windows Client: use Putty Server: get Cygwin DB-3: Tips for Database Administrators
21
After-image journalling is your friend!
Tip Number 0x05 After-image journalling is your friend! DB-3: Tips for Database Administrators
22
After Imaging Do you use after-image journalling?
YOU SHOULD AI records all database changes Intended for disaster recovery hot standby on another machine DB-3: Tips for Database Administrators
23
AI Basics Add AI extents to database Back up the database
Enable after-imaging Archive ai extents as they become full 10.1 has an automatic archiver OpenEdge DBA guide has details DB-3: Tips for Database Administrators
24
AI basics 2 A failure occurs and you lose your database …..
Fix the failure replace disk, memory, machine, etc. Restore the backup copy of your database Roll forward all ai extents you archived You do know where you put them, don’t you? I hope they weren’t on the failed disk When roll forward done, start database Now you are back to where you were DB-3: Tips for Database Administrators
25
Specify scratch space for index rebuild
Tip Number 0x06 Specify scratch space for index rebuild DB-3: Tips for Database Administrators
26
Index rebuild scratch space
Command line looks like this: proutil dbname -C idxbuild table customer \ -SS dbname.srt -TB 31 -TM 32 -B 1000 Scratch space spec file (dbname.srt) looks like this: 300 /user2/db1/first/ 400 /user3/junk/ 0 /user4/last/ note multiple drives in this example DB-3: Tips for Database Administrators
27
Tools you should know about
Tip Number 0x07 Tools you should know about DB-3: Tips for Database Administrators
28
Tools uptime find top lsof ifconfig vmstat iostat netstat bzip2
DB-3: Tips for Database Administrators
29
Tools: uptime $ uptime 11:26am up 17 day(s), 9:16, 163 users, load average: 3.09, 3.36, 3.76 $ DB-3: Tips for Database Administrators
30
Tools: top gus@dirac:gus $ top -l 1
Processes: 65 total, 3 running, 62 sleeping threads :51:24 Load Avg: 0.04, 0.06, CPU usage: 11.1% user, 44.4% sys, 44.4% idle SharedLibs: num = 170, resident = 37.0M code, 5.30M data, 6.44M LinkEdit MemRegions: num = 6460, resident = 166M M private, 164M shared PhysMem: 161M wired, 758M active, 879M inactive, 1.76G used, 248M free VM: 9.47G M (0) pageins, 16746(0) pageouts PID COMMAND %CPU TIME #TH #PRTS #MREGS RPRVT RSHRD RSIZE VSIZE 606 top % 0: K 684K 748K 26.9M 586 bash % 0: K 1.05M 844K 27.1M 585 login % 0: K 768K 636K 26.9M 583 Terminal % 0: M 11.9M 8.93M 364M 563 TextEdit % 0: M 8.94M 5.80M 355M 558 TeXShop % 0: M 20.2M 25.6M 365M 467 firefox-bi 0.0% 1: M 29.4M 67.4M 428M DB-3: Tips for Database Administrators
31
Tools:find find files modified more than 30 days ago
find . -mtime +30 -print delete files modified more than 30 days ago find . -mtime +30 -exec rm {} \; find files bigger than 16k find . -size c -print find . -size +32 -print delete files bigger than 16k find . -size c -print | xargs -i rm \; Read the man page! DB-3: Tips for Database Administrators
32
ftp://vic.cc.purdue.edu/pub/
Tools:lsof _progres bleicher /usr/lib/librt.so.1 _progres bleicher /usr/lib/libsocket.so.1 _progres bleicher /usr/lib/libintl.so.1 _progres bleicher /usr/lib/ld.so.1 _progres bleicher /usr/lib/libdl.so.1 . . . _progres bleicher /tools/solaris/dlc100b/promsgs _progres bleicher /tools/solaris/dlc100b/bin/_progres ftp://vic.cc.purdue.edu/pub/ DB-3: Tips for Database Administrators
33
Tools:ifconfig 1-bespin-gus-> /usr/sbin/ifconfig -a
lo0: flags= <UP,LOOPBACK,RUNNING,MULTICAST, IPv4> mtu 8232 index 1 inet netmask ff000000 ce0: flags= <UP,BROADCAST,RUNNING,MULTICAST, IPv4> mtu 1500 index 2 inet netmask ffff0000 broadcast DB-3: Tips for Database Administrators
34
Tools:ifconfig gus@dirac:gus $ ifconfig en0
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 tunnel inet --> inet6 fe80::217:f2ff:fecc:b686%en0 prefixlen 64 scopeid 0x4 inet netmask 0xffff0000 broadcast ether 00:17:f2:cc:b6:86 media: autoselect (1000baseT <full-duplex,flow-control>) status: active supported media: autoselect 10baseT/UTP <half-duplex> 10baseT/UTP <full-duplex>10baseT/UTP <full-duplex,hw-loopback> 10baseT/UTP <full-duplex flow-control> 100baseT<half-duplex> 100baseTX <full-duplex> 100baseTX <full-duplex,hw-loopback> 100baseTX <full-duplex,flow-control> 1000baseT <full-duplex> 1000baseT <full-duplex,hw-loopback> 1000baseT <full-duplex,flow-control> none vlan: 0 parent interface: <none> bond interfaces: <none> DB-3: Tips for Database Administrators
35
Tools:netstat 1-bespin-gus-> netstat TCP: IPv4
Local Address Remote Address Swind Send-Q Rwind Recv-Q State bespin rdlserv.nfsd ESTABLISHED bespin bespin ESTABLISHED bespin bespin ESTABLISHED bespin bespin ESTABLISHED bespin bespin CLOSE_WAIT . . . DB-3: Tips for Database Administrators
36
Tools: netstat -s gus@dirac:4gl $ netstat -s tcp: 794419 packets sent
37468 data packets ( bytes) 51 data packets (11242 bytes) retransmitted 0 resends initiated by MTU discovery ack-only packets ( delayed) 0 URG only packets 0 window probe packets window update packets 4516 control packets packets received 33675 acks (for bytes) 2270 duplicate acks 0 acks for unsent data packets ( bytes) received in-sequence 385 completely duplicate packets ( bytes) 0 old duplicate packets 41 packets with some dup. data (28512 bytes duped) 33202 out-of-order packets ( bytes) 1 packet (376 bytes) of data after window DB-3: Tips for Database Administrators
37
vmstat vmstat 3 50 procs memory swap io system cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa . . . DB-3: Tips for Database Administrators
38
iostat gus@dirac:gus $ iostat 5 5 disk0 cpu KB/t tps MB/s us sy id
DB-3: Tips for Database Administrators
39
Tools:bzip2 $ ls -l tips_for_dbas_00.ppt
-rw-r--r gus staff Apr 23 09:18 tips_for_dbas_00.ppt $ bzip2 tips_for_dbas_00.ppt $ ls -l tips_for_dbas_00.ppt.bz2 -rw-r--r gus staff Apr 23 09:18 tips_for_dbas_00.ppt.bz2 DB-3: Tips for Database Administrators
40
Tools: Windows tabbed console
DB-3: Tips for Database Administrators
41
Tools: windows tabbed console
DB-3: Tips for Database Administrators
42
Tools: More Windoze Stuff
Some useful stuff you can get there: Handle: Who has what files open Process Monitor: Lots of information about processes and disk activity Autorun: what programs get started automatically Regmon: monitors registry activity Tcpview: shows all active TCP and UDP endpoints PsTools: list processes, system info, who is logged on Zoomit: zoom in on parts of screen Lots more DB-3: Tips for Database Administrators
43
Tools: Still More Windoze Stuff
DB-3: Tips for Database Administrators
44
Tools: Solaris pldd List the dynamic libraries linked into each process pfiles Report fstat(2) and fcntl(2) information for all open files in each process. pmap print information about the address space of a process plimit get or set the resource limits of running processes pargs print process arguments, environment variables preap force a defunct process to be reaped by its parent pkginfo list what packages are installed DB-3: Tips for Database Administrators
45
Tools: AIX svmon List top 15 memory consumers
svmon -G -I size inuse free pin virtual memory pg space work pers clnt pin in use PageSize PoolSize inuse pgsp pin virtual s 4 KB L 16 MB List top 15 memory consumers svmon -Pt15 | perl -e ’while(<>){print if($.==2||$&&&!$s++);$.=0 if(/^-+$/)}’ DB-3: Tips for Database Administrators
46
Tools: AIX vmstat vmstat -v 1048576 memory pages 1002054 lruable pages
free pages 1 memory pools 95342 pinned pages 80.1 maxpin percentage 20.0 minperm percentage 80.0 maxperm percentage 36.1 numperm percentage file pages . . . Use vmo command to adjust minperm, maxperm, numperm as needed DB-3: Tips for Database Administrators
47
Tip Number 0x08 Windows scripting
DB-3: Tips for Database Administrators
48
Windows .bat scripts are brain damaged
Windows scripting Windows .bat scripts are brain damaged Cygwin provides lots of Unix tools and a shell for Windows. Also SSH server Download from: Windows Services for UNIX Version 3.5 From Micro$oft, but free Lots of goodies: Korn, C, bash shells, 350 UNIX commands, NFS, NFS gateway, telent, telnetd Download from DB-3: Tips for Database Administrators
49
how to turn off Windows indexing service
Tip Number 0x09 how to turn off Windows indexing service DB-3: Tips for Database Administrators
50
Stop Windows indexing service
Go to the Start menu, pick run. Type services.msc, click OK. Services dialog will show. Right-click on indexing service to show properties dialog, if service running, click stop. select disabled. click apply close. DB-3: Tips for Database Administrators
51
creating Windows services
Tip Number 0x0a creating Windows services DB-3: Tips for Database Administrators
52
User SRVANY to run Windows Services
Lets you create “user defined” Windows services Instructions and download from Warning: This is not for n00bs. Study before using Read DB-3: Tips for Database Administrators
53
How to telnet to Windows
Tip Number 0x0b How to telnet to Windows DB-3: Tips for Database Administrators
54
Enable Windows telnet login by name/passwd
NTLM authentication by default To fix: run TLNTADMN take menu pick no 3 (display/change …) pick 7 (NTLM) set value to 1 take menu pick no 4 (restart service) BUT: don’t use telnet DB-3: Tips for Database Administrators
55
scripting Progress backup
Tip Number 0x0c scripting Progress backup DB-3: Tips for Database Administrators
56
source: PEG, from Jared Middleton
Scripting backup bkupdev="${DB_bkupdir}/${DB_name}.bkup" rm -f ${bkupdev}* 2>&1 # echo "Backing up database $DB_dir/$DB_name to $bkupdev" $DLC/bin/probkup online $DB_dir/$DB_name ${bkupdev}01 \ -vs bf 40 <<EOF ${bkupdev}02 ${bkupdev}03 . . . ${bkupdev}12 ${bkupdev}_overflow EOF source: PEG, from Jared Middleton DB-3: Tips for Database Administrators
57
Tip Number 0x0d scripting promon
DB-3: Tips for Database Administrators
58
Set page size, capture list of IO operations by process
Scripting promon Set page size, capture list of IO operations by process $DLC/bin/promon $DBNAME > promon.log \ <<- "EOF" 2> /dev/null R&D 5 1 9999 p 3 2 x EOF DB-3: Tips for Database Administrators
59
scripting after imaging
Tip Number 0x0e scripting after imaging DB-3: Tips for Database Administrators
60
Scripting ai archiving
EXTENT_NAME=`_rfutil $DB_DIR/$DB -C aimage extent full` # EXTENT_DATE=`date +%Y%m%d-%H%M%S` # like this: tar -czvf /anotherdisk/aiarchives/$EXTENT_DATE $EXTENT_NAME rfutil $DB_DIR/$DB -C aimage extent empty $EXTENT_NAME DB-3: Tips for Database Administrators
61
How much space is being used
Tip Number 0x0f How much space is being used by storage areas? DB-3: Tips for Database Administrators
62
How much space is being used?
for each _AreaStatus where ( not _AreaStatus-Areaname matches "*After Image Area*" ) no-lock: display _AreaStatus-Areanum format ">>>" column-label "Num" _AreaStatus-Areaname format "x(20)" column-label "Area Name" _AreaStatus-Totblocks column-label "Tot blocks" _AreaStatus-Hiwater column-label "High water mark" _AreaStatus-Hiwater / _AreaStatus-Totblocks * 100 column-label "% use" _AreaStatus-Extents format ">>>" column-label "Num Extents" . end. from PEG: Dmitri Levin DB-3: Tips for Database Administrators
63
List tables by storage area
Tip Number 0x10 List tables by storage area DB-3: Tips for Database Administrators
64
List tables by storage area
for each _Area, each _Storageobject where (_Storageobject._Area-number = _Area._Area-number), each _File where (_File._File-Number = _Storageobject._Object-number) and (_File._File-Number > 0) break by _File._File-name: display _Area._Area-name _File._File-name. end. DB-3: Tips for Database Administrators
65
Listing of tables by storage area
Area-name File-Name Schema Area agedar Schema Area customer Schema Area item Schema Area monthly DB-3: Tips for Database Administrators
66
List tables by storage area
for each _Area, each _Storageobject where (_Storageobject._Area-number = _Area._Area-number), each _File where (_File._File-Number = _Storageobject._Object-number) and (_File._File-Number > 0) break by _File._File-name: display _Area._Area-name _File._File-name. end. DB-3: Tips for Database Administrators
67
List tables by storage area 2
for each _Area, each _Storageobject where (_Storageobject._Area-number = _Area._Area-number), each _File where (_File._File-Number = _Storageobject._Object-number) and (_File._File-Number > 0) and (_StorageObject._Object-type eq 1) break by _File._File-name: display _Area._Area-name _File._File-name. end. DB-3: Tips for Database Administrators
68
List indices by storage area and table
Tip Number 0x11 List indices by storage area and table DB-3: Tips for Database Administrators
69
List indexes by storage area and table
for each _Area, each _Storageobject where (_Storageobject._Area-number = _Area._Area-number), each _Index where (_Index._Idx-num = _Storageobject._Object-number) and (_StorageObject._Object-type eq 2) : find _File of _Index. if (_File._File-number > 0) then display _Area._Area-name _File._File-name _Index._Index-name. end. DB-3: Tips for Database Administrators
70
Tip Number 0x12 Learn to use vi DB-3: Tips for Database Administrators
71
vi cheat sheet DB-3: Tips for Database Administrators
72
Tip Number 0x13 Tom Bascom’s protop
DB-3: Tips for Database Administrators
73
protop Tom Bascom’s Open Source Progress 4GL VST based performance monitoring program Displays tons of useful information Study source code to learn how it is done Download from DB-3: Tips for Database Administrators
74
Adam Backman’s DBA scripts
Tip Number 0x14 Adam Backman’s DBA scripts DB-3: Tips for Database Administrators
75
Adam Backman’s dba scripts
Available on PEG: Been aroud awhile, but very good Stuff they do: backup check ai status check db status look for blocked clients more … Study code to learn how it is done DB-3: Tips for Database Administrators
76
Tip Number 0x15 Where to get more tips
DB-3: Tips for Database Administrators
77
Where to learn more OpenEdge Database Administration Guide
PSDN: Classes (not the only ones) Bravepoint: bravepoint.com White Star Software: wss.com Progress DBA classes PSC Tech Support Knowledge Center DB-3: Tips for Database Administrators
78
Tip Number 0x16 Join the PEG www.peg.com Ask questions there
DB-3: Tips for Database Administrators
79
? Questions DB-3: Tips for Database Administrators
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.