Mysql5.1.36 autoinstall.sh
以下腳本由楊良偉同學(xué)一手編寫,我只是為了其他文章方便轉(zhuǎn)載才放進(jìn)自己的文章,以下有附件可以下載,將txt改成sh,賦予執(zhí)行位,即可執(zhí)行自動安裝,忘轉(zhuǎn)載者標(biāo)明出處,謝謝。
楊良偉同學(xué)blog鏈接:
http://http//ylw6006.blog.51cto.com/
有興趣的可以進(jìn)去看看
下載鏈接:
mysql5.1.36_auto-install.sh
http://down.51cto.com/data/156552
-----------------------------------------------------------------------------------------------------------------------------------------------------
#!/bin/sh
#function:use this script automatic install mysql.5.1.36...
#author:lw.yang
################################################################################################################################################################################
???????
###:remove default rpm packets if them has been installed...
service mysqld stop
? if [ -f /usr/bin/mysqld_safe ];then
???? echo "Remove default mysql-server RPM packets..."
???? yum -y remove mysql-server > /dev/null 2>&1
???? yum -y groupremove "MySQL Database" > /dev/null 2>&1
? fi
?
? if [ -f /usr/bin/mysqldump ];then
???? echo "Remove default mysql-client RPM packets..."
???? yum -y remove mysql > /dev/null 2>&1
? fi
?
###:add private group and user for mysql,then create data storage directory...
? echo "Setting Environment variables..."
? userdel? -r mysql???? > /dev/null 2>&1
? groupdel -r mysql???? > /dev/null 2>&1
? groupadd -g 27 mysql? > /dev/null 2>&1
? useradd -g mysql -u 27 -d /dev/null -s /sbin/nologin mysql? > /dev/null 2>&1
?if [ ! -d /mydata ];then
??? echo "Creating data directory..."
??? mkdir /mydata
?fi
?
?chown -R mysql.mysql /mydata
###:Download and install mysql...
echo "Download and install mysql..."
?if [ ! -d /usr/local/src/tarbag ];then
??echo? "Creating tarbag? diretcory for install..."
??mkdir /usr/local/src/tarbag?
?fi
?if [ ! -d /usr/local/src/software ];then
??echo? "Creating software directory for install..."
??mkdir /usr/local/src/software?
?fi
?
?if [ ! -f /usr/local/src/tarbag/mysql-5.1.36.tar.gz ];then
??echo "Download mysql ..."
??cd /usr/local/src/tarbag &&? wget http://downloads.mysql.com/archives/mysql-5.1/mysql-5.1.36.tar.gz?
??exit 2
?fi
?
??
?if? [ ! -d /usr/local/src/software/mysql-5.1.36 ];then
??echo "Extract mysql source code ..."
??tar -zxvf mysql-5.1.36.tar.gz -C /usr/local/src/software > /dev/null
??exit 2
?fi
?
?cd /usr/local/src/software/mysql-5.1.36
?./configure --prefix=/usr/local/mysql --datadir=/mydata --with-charset=utf8 --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables --with-ssl --with-embedded-server --enable-local-infile --enable-assembler --with-plugins=partition > /dev/null
?if? [ $? != 0 ];then
??echo "Configure mysql failure,Please check compile Environment..."
??exit 2
?fi
?
?make -j 3 > /dev/null
?if [ $? != 0 ];then
??echo "Make software failure,please look config.log for more information..."
?exit 2
?fi
?make install > /dev/null 2>&1
?if [ $? = 0 ];then
??echo "Mysql install complete done ..."
??else echo "Something wrong between installation..."
??exit 2
?fi
###:Initialization mysql...
?? echo "Initialization mysql..."
?? rm -rf /etc/my.cnf
?? rm -rf /etc/init.d/mysqld
?? cp? /usr/local/src/software/mysql-5.1.36/support-files/my-medium.cnf /etc/my.cnf
?? sed -i '38i\max_connection = 2000'????? /etc/my.cnf
?? sed -i '39i\datadir = /mydata'????????? /etc/my.cnf
?? sed -i '40i\basedir = /usr/local/mysql' /etc/my.cnf
?? sed -i '41i\expire_logs_days = 3'?????? /etc/my.cnf
?? sed -i '42i\max_binlog_size = 512M'???? /etc/my.cnf
?? cp? /usr/local/src/software/mysql-5.1.36/support-files/mysql.server /etc/init.d/mysqld
?? chmod +x /etc/init.d/mysqld
?? chkconfig --add mysqld
?? chkconfig mysqld on
?? chown -R mysql.mysql /usr/local/mysql
??
? echo "Modify mysql-server main parameter file..."
? /usr/local/mysql/bin/mysql_install_db --user=mysql --datadir=/mydata > /dev/null
????? if [ $? = 0 ];then
???????? echo " Initialization mysql complete done ..."
???????? else echo "Something wrong between Initialization..."
???????? exit 2
????? fi
? chown -R mysql.mysql /usr/local/mysql
? cp -rp /mydata/mysql /usr/local/mysql/share/
? service mysqld start
?
-----------------------------------------------------------------------------------------------------------------------------------------------------
目前腳本運行完可能無法正常啟動,那就手動初始化一下mysql
# /usr/local/mysql/bin/mysql_install_db --user=mysql --datadir=/mydata
WARNING: The host '158LDAP' could not be looked up with resolveip.
This probably means that your libc libraries are not 100 % compatible
with this binary MySQL version. The MySQL daemon, mysqld, should work
normally with the exception that host name resolving will not work.
This means that you should use IP addresses instead of hostnames
when specifying MySQL privileges !
Installing MySQL system tables...
OK
Filling help tables...
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/local/mysql/bin/mysqladmin -u root password 'new-password'
/usr/local/mysql/bin/mysqladmin -u root -h 158LDAP password 'new-password'
Alternatively you can run:
/usr/local/mysql/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default.? This is
strongly recommended for production servers.
See the manual for more instructions.
You can start the MySQL daemon with:
cd /usr/local/mysql ; /usr/local/mysql/bin/mysqld_safe &
You can test the MySQL daemon with mysql-test-run.pl
cd /usr/local/mysql/mysql-test ; perl mysql-test-run.pl
Please report any problems with the /usr/local/mysql/scripts/mysqlbug script!
The latest information about MySQL is available at http://www.mysql.com/
Support MySQL by buying support/licenses from http://shop.mysql.com/
出現(xiàn)以上提示即初始化成功
# service mysqld start
Starting MySQL.??????????????????????????????????????????? [? OK? ]
最后為了方便mysql命令的調(diào)用,可以將mysql/bin的路徑加入到環(huán)境變量中
在/etc/profile文件的 unset? i 上一行加入如下內(nèi)容
pathmunge /usr/local/mysql/bin
并運行下面的命令即可
#?source? /etc/profile
轉(zhuǎn)載于:https://blog.51cto.com/tonyty163/462674
總結(jié)
以上是生活随笔為你收集整理的Mysql5.1.36 autoinstall.sh的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AD+DNS安装步骤详解
- 下一篇: apache ,php,mysql的安装