summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--[-rwxr-xr-x]abs/core-testing/LinHES-config/install_db_chroot.sh136
1 files changed, 41 insertions, 95 deletions
diff --git a/abs/core-testing/LinHES-config/install_db_chroot.sh b/abs/core-testing/LinHES-config/install_db_chroot.sh
index 808dbb9..94305d2 100755..100644
--- a/abs/core-testing/LinHES-config/install_db_chroot.sh
+++ b/abs/core-testing/LinHES-config/install_db_chroot.sh
@@ -6,112 +6,58 @@
myhost=$hostname
hostname $myhost
echo $myhost > /etc/hostname
-echo "$0 hostname is $hostname"
+echo "install_db_chroot hostname is $hostname"
. $MV_ROOT/bin/install_functions.sh
#myhost=`cat /etc/hostname`
-# Before this script is called, the mysqld that facilitated the installation is killed.
-# We need to make sure to stop and start the mysqld that will be used post-install so
-# that the database can be initialized.
-
-/etc/rc.d/mysqld stop
-killall -9 mysqld
-/etc/rc.d/mysqld start
-sleep 1
-
-# Put a limit on how many times we try to (re-)start MySQL
-success_test() {
- # parameter: number of tries to start mysqld so far
- PID=`pidof -o %PPID /usr/sbin/mysqld`
- if [ -z "$PID" ]; then # mysqld isn't running
- if [ $1 -gt 3 ]; then
- echo "ERROR: Failed to start MySQL server in $1 attempts."
- sleep 5
- exit 1
- else
- echo "Tried $1 time(s) to start MySQL server."
- return 1
- fi
- else # mysqld is running
- return 0
- fi
- # should never get here
- return 1
-}
-
-mysqld_tries=0
-# See if MySQL server is running; try several ways to start it if it's not.
-while true; do
- success_test $mysqld_tries
- if [ $? -eq 0 ]; then
- echo "MySQL server is running"
- break
- else
- echo "MySQL server is not running. Trying to start it."
- # Maybe it just needs to be started
- sleep 1
- /etc/rc.d/mysqld start
- mysqld_tries=$((mysqld_tries + 1))
- success_test $mysqld_tries
- if [ $? -eq 0 ]; then
- echo "MySQL server has been started"
- break
- else
- echo "MySQL server may not be installed. Trying to install it."
- # Maybe it's not installed; try (re-)installing it and starting it
- sleep 1
- pacman --noconfirm -Sf mysql
- sleep 1
- /etc/rc.d/mysqld start
- mysqld_tries=$((mysqld_tries + 1))
- success_test $mysqld_tries
- if [ $? -eq 0 ]; then
- echo "MySQL server has been installed and started"
- break
- else
- echo "MySQL server would not start, even after (re-)installing it."
- fi
- fi
- fi
-done
-
-# At this point, MySQL server should be up and running
-
-while true; do
- mysql -e "show databases;"
-
- if [ $? -eq 0 ]; then
- pacman --noconfirm -R mythdb-initial
- pacman --noconfirm -S mythdb-initial
- $MV_ROOT/bin/restore_default_settings.sh -c load
- DISPLAY=127.0.0.1:0 $MV_ROOT/bin/MythVantage -t restore,default_1
- $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings
- $MV_ROOT/bin/systemconfig.sh misc,hostype,this_is_install
-
- update_db_settings HostServiceMythWEB "1"
- echo 'UseMythWEB="1"' >> /etc/systemconfig
-
- #update database to allow user jobs on this host.
- $MV_ROOT/bin/restore_default_settings.sh -c USERJOBALLOW
- $MV_ROOT/bin/restore_default_settings.sh -c ACCESSCONTROL
- #if [ -d /var/lib/mysql/mythconverg ]
- if [ -d /data/srv/mysql/mythconverg ]; then
+#mount -t proc none /proc
+pacman --noconfirm -Sf mysql
+/etc/rc.d/mysqld
+
+status=1
+mysqlstatus=1
+while [ ! $status = 0 ]
+do
+ /etc/rc.d/mysqld stop
+ sleep 1
+ /etc/rc.d/mysqld start
+ mysqlstatus=$?
+ if [ $mysqlstatus = 0 ]
+ then
+ mysql -e "show databases;"
+ showstatus=$?
+ if [ $showstatus = 0 ]
+ then
+ pacman --noconfirm -R mythdb-initial
+ pacman --noconfirm -S mythdb-initial
+ $MV_ROOT/bin/restore_default_settings.sh -c load
+ DISPLAY=127.0.0.1:0 $MV_ROOT/bin/MythVantage -t restore,default_1
+ $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings
+ $MV_ROOT/bin/systemconfig.sh misc,hostype,this_is_install
+
+ update_db_settings HostServiceMythWEB "1"
+ echo 'UseMythWEB="1"' >> /etc/systemconfig
+
+ #update database to allow user jobs on this host.
+ $MV_ROOT/bin/restore_default_settings.sh -c USERJOBALLOW
+ $MV_ROOT/bin/restore_default_settings.sh -c ACCESSCONTROL
+ if [ -d /data/srv/mysql/mythconverg ]
+ #if [ -d /var/lib/mysql/mythconverg ]
+ then
# pacman --noconfirm -R webcalendar
# pacman --noconfirm --nodeps -S webcalendar
- break
- else
- echo "Failed to create mythconverg database. Will re-try."
- sleep 1
- fi
+ status=0
+ fi
# if [ $SystemType = "Master_backend" ]
# then
# $MV_ROOT/bin/restore_default_settings.sh -c BECONFIG -s master -a $dbhost
# fi
- else
- echo "Failed to look for databases. Will re-try."
- sleep 1
+ fi
fi
done
/etc/rc.d/mysqld stop
#umount /proc
+
+
+