Difference between revisions of "User talk:Mmccarn"
(Mariadb backup & restore) |
|||
Line 1: | Line 1: | ||
− | === | + | ===Install mariadb 'alongside' mysql=== |
+ | ====Draft notes on mariadb installation==== | ||
<nowiki> | <nowiki> | ||
##################################################################################### | ##################################################################################### | ||
Line 59: | Line 60: | ||
</nowiki> | </nowiki> | ||
− | * Nice notes. Would it be worth it to look at the pre-backup and pre-restore events (And config db settings) so MariaDB databases are being backup up ? | + | ====Backup & Restore==== |
+ | * (RequestedDeletion) Nice notes. Would it be worth it to look at the pre-backup and pre-restore events (And config db settings) so MariaDB databases are being backup up ? | ||
+ | =====/etc/e-smith/events/actions/mariadb-dump-tables===== | ||
+ | * Based on /etc/e-smith/events/actions/mysql-dump-tables | ||
+ | * "CONNECT" options separated out for easy modification and potential movement into db variables | ||
+ | * "-x" option added to the mysqldump command line to avoid an error about locking log files | ||
+ | <nowiki>#!/bin/sh | ||
+ | #CONNECT=--socket=/opt/mariadb-data/mariadb.sock | ||
+ | CONNECT="--protocol=TCP --port=3307" | ||
+ | if ! $(mysqladmin $CONNECT ping >/dev/null 2>&1) | ||
+ | then | ||
+ | echo "mariadb is not running - no tables dumped" >&2 | ||
+ | exit 0 | ||
+ | fi | ||
+ | |||
+ | mkdir -p /home/e-smith/db/mariadb | ||
+ | for db in $(mysql $CONNECT -BNre "show databases;") | ||
+ | do | ||
+ | mysqldump $CONNECT -x --add-drop-table -QB "$db" -r /home/e-smith/db/mariadb/"$db".dump || exit 1 | ||
+ | done</nowiki> | ||
+ | =====/etc/e-smith/events/actions/mariadb-load-tables===== | ||
+ | * based on /etc/e-smith/events/actions/mysql-load-tables | ||
+ | * doesn't actually load the dbs | ||
+ | * NEEDS EXAMINATION! | ||
+ | <nowiki>#!/bin/sh | ||
+ | #CONNECT=--socket=/opt/mariadb-data/mariadb.sock | ||
+ | CONNECT="--protocol=TCP --port=3307" | ||
+ | MARIADATA=/opt/mariadb-data | ||
+ | |||
+ | if ! $(mysqladmin $CONNECT ping >/dev/null 2>&1) | ||
+ | then | ||
+ | echo "mariadb is not running - no tables restored" >&2 | ||
+ | exit 0 | ||
+ | fi | ||
+ | |||
+ | if [ ! -f $MARIADATA/mysql/user.frm ] | ||
+ | then | ||
+ | mkdir -p /etc/e-smith/mariadb/init | ||
+ | for db in $(ls /home/e-smith/db/mariadb/*.dump 2> /dev/null | grep -v '/mysql.dump') | ||
+ | do | ||
+ | mv $db /etc/e-smith/mariadb/init/01_$(basename $db .dump).sql | ||
+ | done | ||
+ | fi</nowiki> | ||
+ | =====Automation===== | ||
+ | ======Backup====== | ||
+ | * Link mariadb-dump-tables into the pre-backup event | ||
+ | * Dumped tables should be included in backups as they are stored under /home/e-smith | ||
+ | <nowiki>cd /etc/e-smith/events/pre-backup | ||
+ | ln -s ../actions/mariadb-dump-tables S20mariadb-dump-tables</nowiki> | ||
+ | ======Restore - NEEDS WORK====== | ||
+ | The SME Server mysql restore is complicated by various factors that may not apply to a mariadb "alongside" installation. | ||
+ | Here's what would need to be done to restore all mariadb databases: | ||
+ | * Reinstall mariadb, including setting the password to match the mysql root password | ||
+ | * Restore the 'dump' files created during pre-backup individually using: | ||
+ | <nowiki>cd /home/e-smith/db/mariadb | ||
+ | CONNECT=--socket=/opt/mariadb-data/mariadb.sock | ||
+ | mysql $CONNECT < <dbname>.dump</nowiki> | ||
+ | |||
===Install Moodle using git=== | ===Install Moodle using git=== | ||
====Installation==== | ====Installation==== |
Revision as of 16:52, 8 December 2013
Install mariadb 'alongside' mysql
Draft notes on mariadb installation
##################################################################################### # BEGIN ##################################################################################### # yum repos aren't useful; use the side-by-side install # Install mariadb side-by-side with mysql on SME Server v8 # From: https://mariadb.com/kb/en/installing-mariadb-alongside-mysql/ # # create user 'mariadb' in server-manager # cd ~ mkdir -p addons cd addons RELEASE=5.5.34 wget https://downloads.mariadb.org/interstitial/mariadb-$RELEASE/kvm-bintar-hardy-x86/mariadb-$RELEASE-linux-i686.tar.gz/from/http://mirror.jmu.edu/pub/mariadb cd /opt tar zxvf ~/addons/mariadb-$RELEASE-linux-i686.tar.gz ln -s mariadb-$RELEASE-linux-i686 mariadb mkdir mariadb-data cp mariadb/support-files/my-medium.cnf mariadb-data/my.cnf # # edit my.cnf as described on the mariadb-alongside-mysql howto (link above) chown -R mariadb:mariadb mariadb-data mariadb mariadb-$RELEASE-linux-i686 # cp mariadb/support-files/mysql.server /etc/init.d/mariadb chmod +x /etc/init.d/mariadb # # edit /etc/init.d/mariadb as described in the howto # cd /opt/mariadb scripts/mysql_install_db --defaults-file=/opt/mariadb-data/my.cnf cd /etc/init.d chkconfig --add mariadb chkconfig --levels 3 mariadb on # SME Server uses runlevel 7... mv /etc/rc3.d/S64mariadb /etc/rc7.d # # customizations not mentioned in the howto: mkdir /var/run/mariadb chown mariadb:maridb /var/run/mariadb # # customize the execution line in /etc/init.d/mariadb # # version from howto: # $bindir/mysqld_safe --defaults-file=/opt/mariadb-data/my.cnf --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 & # # version I'm using: # $bindir/mysqld_safe --defaults-file=/opt/mariadb-data/my.cnf --datadir="/opt/mariadb-data" --pid-file="/var/run/mariadb/mariadb.pid" $other_args >/dev/null 2>&1 & # # Finally, testing access requires asking for a password, then entering an empty password (SME feeds the 'root'@'localhost' password to mysql by default: # mysql -e "SELECT VERSION();" --port=3307 --protocol=TCP -p # # set root password in mariadb same as root password in mysql mysql --port=3307 --protocol=TCP -p < /var/service/mysqld/set.password # # Now the example version check from the howto works: mysql -e "SELECT VERSION();" --socket=/opt/mariadb-data/mariadb.sock
Backup & Restore
- (RequestedDeletion) Nice notes. Would it be worth it to look at the pre-backup and pre-restore events (And config db settings) so MariaDB databases are being backup up ?
/etc/e-smith/events/actions/mariadb-dump-tables
- Based on /etc/e-smith/events/actions/mysql-dump-tables
- "CONNECT" options separated out for easy modification and potential movement into db variables
- "-x" option added to the mysqldump command line to avoid an error about locking log files
#!/bin/sh #CONNECT=--socket=/opt/mariadb-data/mariadb.sock CONNECT="--protocol=TCP --port=3307" if ! $(mysqladmin $CONNECT ping >/dev/null 2>&1) then echo "mariadb is not running - no tables dumped" >&2 exit 0 fi mkdir -p /home/e-smith/db/mariadb for db in $(mysql $CONNECT -BNre "show databases;") do mysqldump $CONNECT -x --add-drop-table -QB "$db" -r /home/e-smith/db/mariadb/"$db".dump || exit 1 done
/etc/e-smith/events/actions/mariadb-load-tables
- based on /etc/e-smith/events/actions/mysql-load-tables
- doesn't actually load the dbs
- NEEDS EXAMINATION!
#!/bin/sh #CONNECT=--socket=/opt/mariadb-data/mariadb.sock CONNECT="--protocol=TCP --port=3307" MARIADATA=/opt/mariadb-data if ! $(mysqladmin $CONNECT ping >/dev/null 2>&1) then echo "mariadb is not running - no tables restored" >&2 exit 0 fi if [ ! -f $MARIADATA/mysql/user.frm ] then mkdir -p /etc/e-smith/mariadb/init for db in $(ls /home/e-smith/db/mariadb/*.dump 2> /dev/null | grep -v '/mysql.dump') do mv $db /etc/e-smith/mariadb/init/01_$(basename $db .dump).sql done fi
Automation
Backup
- Link mariadb-dump-tables into the pre-backup event
- Dumped tables should be included in backups as they are stored under /home/e-smith
cd /etc/e-smith/events/pre-backup ln -s ../actions/mariadb-dump-tables S20mariadb-dump-tables
Restore - NEEDS WORK
The SME Server mysql restore is complicated by various factors that may not apply to a mariadb "alongside" installation. Here's what would need to be done to restore all mariadb databases:
- Reinstall mariadb, including setting the password to match the mysql root password
- Restore the 'dump' files created during pre-backup individually using:
cd /home/e-smith/db/mariadb CONNECT=--socket=/opt/mariadb-data/mariadb.sock mysql $CONNECT < <dbname>.dump
Install Moodle using git
Installation
### # TODO ### yum install php-soap --enablerepo=smedev # # http://wiki.contribs.org/Moodle # # Manual Process # create ibay 'moodle' # fix ibay settings & permissions IBAY=moodle /sbin/e-smith/db accounts setprop $IBAY \ FollowSymLinks enabled \ CgiBin enabled \ AllowOverride All \ Group www \ PublicAccess global \ PHPBaseDir "/home/e-smith/files/ibays/$IBAY/:/tmp/" \ UserAccess wr-group-rd-everyone /sbin/e-smith/signal-event remoteaccess-update # mkdir /home/e-smith/files/ibays/$IBAY/moodledata chown www:www /home/e-smith/files/ibays/$IBAY/moodledata # # Install [[Mariadb]] "alongside" # create mariadb database # mysql --socket=/opt/mariadb-data/mariadb.sock create database moodle; grant all privileges on moodle.* to moodle@localhost identified by '35W0SujwtMUmLFg7qkKi' with grant option; # # # Download moodle using git # http://docs.moodle.org/26/en/Git_for_Administrators#Obtaining_the_code_from_Git # cd /home/e-smith/files/ibays/$IBAY git clone git://git.moodle.org/moodle.git cd moodle git branch -a git branch --track MOODLE_26_STABLE origin/MOODLE_26_STABLE git checkout MOODLE_26_STABLE # # rename git folder as html and correct ownership # cd /home/e-smith/files/ibays/$IBAY mv html html.org mv moodle html signal-event ibay-modify $IBAY # # run the command line installer # if prompted, set: # mysql port: 3307 # mysql socket: /opt/mariadb-data/mariadb.sock # # if not prompted, edit /home/e-smith/files/ibays/moodle/html/config.php manually # cd /home/e-smith/files/ibays/$IBAY/html/admin/cli sudo -u www /usr/bin/php install.php
Notes on check_earlytalker
Why did you remove the Request_for_deletion template on the check_earlytalker page? AFAIK it is obsolete and should be deleted according to http://forums.contribs.org/index.php/topic,46234.msg226418.html#msg226418 - — Cactus (talk | contribs) 07:05, 16 February 2012 (MST)
Here's my understanding of the Request_for_deletion addition to this page:
1) Piran posted a link to this page in a thread with the text "Install the check_earlytalker plugin": http://forums.contribs.org/index.php/topic,46229.msg226377.html#msg226377
2) Charlie noticed Piran's post, and assumed the wiki page described how to install check_earlytalker, so he made his post that the page is obsolete: http://forums.contribs.org/index.php/topic,46234.msg226418.html#msg226418
3) The page was updated with the 'Request_for_deletion' template
4) I added the reasoning to the 'talk' page outlining why the page is NOT obsolete (see below)
5) Over a year later, I removed the 'Request_for_deletion' template, assuming everyone had read and agreed with the reasoning I outlined on the 'talk' page.
Copied from http://wiki.contribs.org/Talk:Qpsmtpd_check_earlytalker - Unless there is more information elsewhere, I don't feel that this page is obsolete.
Despite the language used by piran in his mention of this page at http://forums.contribs.org/index.php/topic,46229.msg226377.html#msg226377, this page is not about adding check_earlytalker - which is included by default as mentioned by Charlie in the forum post referenced above.
This page is about:
Documenting the functionality of check_earlytalker (what it does and why it does it) Documenting how to change the timeout value applied by check_earlytalker Documenting how to monitor check_earlytalker to see if it is being used to deny email