Вы находитесь на странице: 1из 13

MySQL database servers check list

Author: Creation Date: Last 'pdate date: (ersion:

Trifon M. Anguelov Septe ber !"# $%%& Septe ber !"# $%%& !.%

This check list outlines the steps to follo) )hen investigating e*isting MySQL database servers in order to take o)nership of the fro their business o)ners or develop ent tea s. The purpose of this docu ent is to record the status before hanging such achines to D+A group for MySQL database support and to identify the areas of i prove ents.

!. MySQL database security Check: Check if MySQL ,root, user has a pass)ord: -trifon.app!/0ho e0trifon 1 ys2l 3u root 4elco e to the MySQL onitor. Co ands end )ith 5 or 6g. 7our MySQL connection id is $8&9% to server version: &.%.!"37ahoo3 SM:3log Type ;help5; or ;6h; for help. Type ;6c; to clear the buffer. ys2l/ Action: <f there isn;t ,root, user pass)ord# this has to be changed Check: Check for all e*isting MySQL database accounts# their access and pass)ords ys2l/ select host# user# pass)ord fro user5 =3333333333333333333333333333333=3333333333=3333333333= > host > user > pass)ord > =33333333333333333333333333333333=3333333333=3333333333= > localhost > root > > > )ine.corp.yahoo.co > root > > > localhost > > > > )ine.corp.yahoo.co > > > > a3int.corp.yahoo.co > repl? on > > > a3int.corp.yahoo.co > chakri > > =33333333333333333333333333333333=33333333333333=3333333333= @ ro)s in set A%.%% secB

Action: Cnsure there are no old MySQL accounts e*isting All user accounts have a valid pass)ord There are no or there are li ited user acounts )ith access fro any host# but instead accounts are li ited to connect fro a specific hostna e A<: addressB

$. MySQL databases Check: Check ho) any MySQL databases e*ists:

ys2l/ sho) databases5 =3333333333= > Database > =3333333333= > ys2l > > staging > > tac > > test > > the is > =3333333333= " ro)s in set A%.%! secB Action: Decord the MySQL databases in your check list

Check: (alidate )ith business o)ners )hich databases are in use and )hich one can be deleted Action: Decord the valid MySQL databases and create a list for MySQL to be deleted

&. MySQL database table types Check: Check the MySQL database tables type: <SAM# <nnoD+ Action: Decord this infor ation in your check list

". +inary logs Check: Check for old binary logs in 0ho e0y0var0 ys2l0data -root.app!/0ho e E ls 3la 0ho e0y0var0 ys2l0data0 total !!F89$&% dr)*r)*r3* G ys2l users !%$& Sep @ %!:&$ . dr)*r)*r3* " ys2l users "!$ Hul !F $$:$G .. 3r)3r)3333 ! ys2l users 888&8"F8$ Mar $9 !9:9% app!3bin.%%! 3r)3r)3333 ! ys2l users G8 Mar $& !9:$& app!3bin.%%$ 3r)3r)3333 ! ys2l users &G%G Mar $" !%:$G app!3bin.%%9 3r)3r)3333 ! ys2l users G8 Mar $" !$:9$ app!3bin.%%& 3r)3r)3333 ! ys2l users !!9G!!$GF Mar 9% !":%G app!3bin.%%" 3r)3r)3333 ! ys2l users G8 Apr ! !@:!@ app!3bin.%%@ 3r)3r)3333 ! ys2l users G8 Apr ! !@:!@ app!3bin.%%G 3r)3r)3333 ! ys2l users G8 Apr ! !G:%! app!3bin.%%F 3r)3r)3333 ! ys2l users G8 Apr ! !G:%! app!3bin.%%8 3r)3r)3333 ! ys2l users G8 Apr F !9:$8 app!3bin.%!% 3r)3r)3333 ! ys2l users G8 Apr 8 !9:$& app!3bin.%!! 3r)3r)3333 ! ys2l users G8 Apr 8 !9:9F app!3bin.%!$ 3r)3r)3333 ! ys2l users !%G9G&"@9$ Apr !& !G:%" app!3bin.%!9 3r)3r)3333 ! ys2l users !%G9GG&!9" Apr !& $$:$@ app!3bin.%!& 3r)3r)3333 ! ys2l users !%G9F$$@F! Apr !" %%:&@ app!3bin.%!" 3r)3r)3333 ! ys2l users !%G9F$&""$ Apr $! $9:"@ app!3bin.%!@ 3r)3r)3333 ! ys2l users !%G9G&$%G! May !% !":9F app!3bin.%!G 3r)3r)3333 ! ys2l users !%G9G&!F@9 Hun $% %F:%8 app!3bin.%!F 3r)3r)3333 ! ys2l users !%G9G&G@%8 Hun $$ $9:"$ app!3bin.%!8 3r)3r)3333 ! ys2l users !%G9G&!8&% Hul 8 !G:!! app!3bin.%$% 3r)3r)3333 ! ys2l users $98&G$F"$ Hul !F !%:%F app!3bin.%$! 3r)3r)3333 ! ys2l users !&&9GG Hul !F !$:98 app!3bin.%$$ 3r)3r)3333 ! ys2l users @@$&$8& Hul !F $$:!" app!3bin.%$9

3r)3r)3333 3r)3r)3333 3r)3r)3333 3r)3r)3333 3r)3r)3333

! ! ! ! !

ys2l ys2l ys2l ys2l ys2l

users ""&FF Hul !F $$:$& app!3bin.%$& users !@$8 Hul !F $$:$G app!3bin.%$" users !%G9G&$%&$ Aug !$ $!:&% app!3bin.%$@ users !%G9G&!8%G Sep @ %!:&! app!3bin.%$G users G"9@!8&! Sep G !@:%8 app!3bin.%$F

Action: The old binary logs has to be cleaned and there should be a process in place to do that on a regular intervals

@. MySQL configuration 3 etc0 y.cnf Check: Check if DIS fi* is in place EE avoid Jree+SD DIS proble s skip3na e3resolve Action: This entry has to be unco DIS resolution ented to fi* MySQL bug )ith

Check: <s this database replicatin EE 'nco log3bin server3id

aster or slave: aster.

ent these if this server )ill be a K!

Action: Decord this infor ation in your check list. <nclude the MySQL aster0slave databases in the Iagios replication onitoring scripts

Check: MySQL datafiles location datadir K 0ho e0y0var0 ys2l0data

Action: (alidate this location has enough free disk space to acco odate feature data gro)th

Check: MySQL error log location log3error K 0ho e0y0logs0 ys2l0 ys2ld.err

Action: (alidate this location has enough free disk space to acco odate feature data gro)th. Truncate the log file if it;s too big

G. MySQL user o)ner , ys2l, ho e and MySQL backup directory Check: Check the , ys2l, user default ho e E cat 0etc0pass)d > grep ys2l

+y default this is 0t p and the . ys2l?history is there Action: Change the MySQL , ys2l, user ho e directory and create the MySQL backup directory Er Er 3f 0t p0. ys2l?history 3f 0t p0.bash?history

E kdir 0ho e0 ys2l E kdir 0ho e0 ys2l0backup E ln 3s 0ho e0 ys2l0backup 0backup

E cho)n ys2l:users 0ho e0 ys2l E ln 3s 0dev0null 0ho e0 ys2l0.bash?history E ln 3s 0dev0null 0ho e0 ys2l0. ys2l?history E vip) Achange the ho e directory for , ys2l, userB

F. MySQL table siLe Check: Check the siLe of the MySQL tables. Do they reach the $ Mb siLe li itN 1 ls 3al 0ho e0y0 ys2l0data0-MySQL3database/ Action: Cnsure no tables has the $ M+ siLe li itation

8. Disk utiliLation Check: Check the disk space utiliLation: 1 df 3k Action: <f disk space utiliLation on any file syste reaches F"O or ore# record this in your check list. Jollo) up for cleanup

!%. C:' utiliLation Check: Check the C:' utiliLation: 1 top

Action: Decord this in your check list

!!. <0P utiliLation Check: Check the <0P utiliLation: -root.app!/0ho e E iostat 3d 3C 3h 3) ! Q+0t %.%% F.%% F.G8 F.GG F.%% F.@& F.@! F.%% 8.!8 F.%% F.&& F."! F.!% F.G$ da% tps M+0s % %.%% F9 %.@" G% %.@% G$ %.@$ @! %.&F F@ %.G9 8! %.GG 8$ %.G$ &G %.&$ G$ %."@ !@% !.9$ @$ %."$ F! %.@& GG %.@@ pass% d% cpu Q+0t tps M+0s Q+0t tps M+0s us ni sy in id %.%% % %.%% %.%% % %.%% & $ $ % 89 %.%% % %.%% %.%% % %.%% $ 9 $ ! 89 %.%% % %.%% %.%% % %.%% " 9 $ ! 8% %.%% % %.%% %.%% % %.%% $ & & % 8% %.%% % %.%% %.%% % %.%% $ $ 9 % 89 %.%% % %.%% %.%% % %.%% ! $ ! % 8G %.%% % %.%% %.%% % %.%% & $ & % 8! %.%% % %.%% %.%% % %.%% ! " " % 8% %.%% % %.%% %.%% % %.%% 9 $ $ % 8$ %.%% % %.%% %.%% % %.%% 9 9 & % 8% %.%% % %.%% %.%% % %.%% % $ $ % 8G %.%% % %.%% %.%% % %.%% !! $ $ ! F& %.%% % %.%% %.%% % %.%% ! ! $ % 8@ %.%% % %.%% %.%% % %.%% $ $ $ % 8"

Action: Decord the Transactions per Second AtpsB and Throughput per Second AM+0sB for each file syste in your check list

!$. DA<D controler Check: Check if the database DA<D controllers achine has Co pa20R: C<SS based

1 ls 3la 0dev0cissS cr)3333333 ! root )heel !@@# % Mar @ $%%& 0dev0ciss% Action: Decord this infor ation in your check list

!9. DA<D infor ation Check: Check the DA<D setup A you package )ith yinstB locally 3333333 1 yinst cissutil Assu ing you eant: yinst install cissutil :ass)ord: yinst: <dentifying packages for installation ... yinst: Jound: cissutil3!.%.9 yinst: Checking prere2uisites ... TPQU yinst: 0ho e0y: yinst: I cissutil3!.%.9 yinst: Jetching cissutil3!.%.9 ... TPQU yinst: cissutil3!.%.9: installing ... yinst: cissutil3!.%.9: install pending ... yinst: cissutil3!.%.9: install co pleted yinst: cissutil3!.%.9: activating ... TPQU re otely 33333333 -trifon.)ine/0ho es0trifon 1 yinst install 3h app!.the is.scd cissutil yssh: Starting a ne) ssh3agent ... cannot create 0ho es0trifon0.ssh3agent.)ine: per ission denied yssh: Crror starting ssh3agent Cnter passphrase for DSA key ;0ho es0trifon0.ssh0identity;: :ass)ord: yssh: Starting a ne) ssh3agent ... ight need to install ,cissutil,

cannot create 0ho es0trifon0.ssh3agent.)ine: per ission denied yssh: Crror starting ssh3agent Cnter passphrase for DSA key ;0ho es0trifon0.ssh0identity;: yssh: Starting a ne) ssh3agent ... cannot create 0ho es0trifon0.ssh3agent.)ine: per ission denied yssh: Crror starting ssh3agent Cnter passphrase for DSA key ;0ho es0trifon0.ssh0identity;: yinst.app!.the is.scd: <dentifying packages for installation ... yinst.app!.the is.scd: Jound: cissutil3!.%.9 yinst.app!.the is.scd: Checking prere2uisites ... yinst.app!.the is.scd: 0ho e0y: yinst.app!.the is.scd: I cissutil3!.%.9 yinst.app!.the is.scd: Jetching cissutil3!.%.9 ... yinst.app!.the is.scd: cissutil3!.%.9: installing ... yinst.app!.the is.scd: cissutil3!.%.9: install pending ... yinst.app!.the is.scd: cissutil3!.%.9: install co pleted yinst.app!.the is.scd: cissutil3!.%.9: activating ... yinst.app!.the is.scd: cissutil3!.%.9: activated

Action: Check the nu ber of drives: E cissutil 3d controller % logical drives: ! running fir )are $.9@ stored fir )are $.9@ scsi bus count $ drives per scsi bus !@ drives Ab!t%#b!t!#b!t$#b!t9#b!t&#b!t"B scsi?bus?count %$ Cache is: Cnabled Total )rite cache siLe K &8!"$ Q+ 4rite cache siLe K $&"G@ Q+ Dead cache siLe K $&"G@ Q+ Cache disabled ap K %*%%%%%%%% Cache enabled on: Avol%#vol!#vol$#vol9#vol&#vol"#vol@#volG#volF#vol8#vol!%#vol!!#vol!$#vol !9#vol!&#vol!"#vol!@#vol!G#vol!F#vol!8#vol$%#vol$!#vol$$#vol$9#vol$&# vol$"#vol$@#vol$G#vol$F#vol$8#vol9%#vol9!B rebuild priority LP4 e*pand priority LP4 vol% (olu e is bootable: 7CS

vol% vol% vol% vol% vol% vol% vol% vol% vol%

" phys drives Ab!t%#b!t!#b!t$#b!t9#b!t&B status PQ failed drives AnoneB block siLe "!$ blocks available "@8%%@$9" fault tolerance DA<D" spare configured 7CS0A(A<L spares Ab!t"B stripe siLe !@k

Action: Check the DA<D level. <f DA<D or DA<D spare disk is not available 3 )otk )ith the application tea to resolve this E cissutil 3s ctlr % vol% ADA<D"B status PQ spare is A(A<LA+LC

!&. Rard)are infor ation Check: 4hat is the MySQL database servers C:'# type infor ation N Action: Decord this infor ation for your check list e ory# hard)are

!". MySQL backup Check: Are there any MySQL backup scripts currently runningN 4hat are the backup re2uire ents: Action: Decord the backup re2uire ents in your check list: 3 fre2uency Ahourly# daily# )eeklyB 3 retention

3 IJS storage# tape backup

!@. MySQL database siLe and gro)th Check: Ro) long the MySQL database has been in production N Csti ated onthly data gro)th and e*pected database siLe N Action: Decord this in your check list. Cnsure the e*isting disk space is enough to acco odate any feature MySQL database gro)th

!G. Iagios

onitoring onitoring of achine or MySQL

Check: <s there any e*isting database N

Action: Decord this in your check list. Jollo) up )ith setting up D+A group Iagios onitoring and disable the e*isting one

!F. Application contact infor ation Check: 4hat is the +usiness o)ner 0 Develop ent tea contact infor ation N Any e*isting ailing list on http:00ilist.yahoo.co N Action: Decord this infor ation in your check list

!8. MySQL vs Pracle Check: <s the application MySQL dependendN Could it easily be converted to Pracle SC N Action: Decord this in your check list

$%. 4hat is the application failover )indo) fro slave databaseN Action: Decord this in your check list

MySQL

aster to

$!. Application failover fro

MySQL

aster to slave database MySQL aster to slave

Check: Test the application failover fro database servers

Action: :repare a procedure and perfor the application failover fro MySQL aster to slave database servers

Вам также может понравиться