Presentation is loading. Please wait.

Presentation is loading. Please wait.

DB-3: Tips for Database Administrators

Similar presentations


Presentation on theme: "DB-3: Tips for Database Administrators"— Presentation transcript:

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


Download ppt "DB-3: Tips for Database Administrators"

Similar presentations


Ads by Google