Linux对mysql5.5.2进行自动安装

来源:互联网 发布:淘宝退货金额改0元吗 编辑:程序博客网 时间:2024/06/05 03:45

在linux目录,编写可执行文件:

install_mysql.sh

#!/bin/sh


# 参数设置
INSTALL_PATH=/usr/local/mysql # 指定安装目录
DATA_PATH=/mnt/datadisk1/mysql # 指定数据目录


if [ -s /etc/my.cnf ];then
rm -rf /etc/my.cnf
fi


echo "----------------------------------start install mysql -----------------------------"
yum install -y gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* cmake
mkdir -p $DATA_PATH
if [ 'grep "mysql" /etc/passwd | wc -l' ]; then
echo "adding user mysql"
groupadd mysql
useradd -s /sbin/nologin -M -g mysql mysql
else
echo "mysql user exists"
fi


echo "------------------------------unpackaging mysql -----------------------------------"
tar -xvf mysql-5.5.20.tar.gz 
cd mysql-5.5.20 


echo "-------------------------configuring mysql,please wait-----------------"
cmake -DCMAKE_INSTALL_PREFIX=$INSTALL_PATH \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=$DATA_PATH \
-DMYSQL_USER=mysql


if [ $? -ne 0 ];then
echo "configure failed ,please check it out!"
exit 1
fi


echo "make mysql, please wait for 10 minutes"
make
if [ $? -ne 0 ];then
echo "make failed ,please check it out!"
exit 1
fi


make install


chmod +w $INSTALL_PATH
chown -R mysql:mysql $INSTALL_PATH
ln -s $INSTALL_PATH/lib/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16
cd support-files/
cp my-large.cnf /etc/my.cnf
cp mysql.server /etc/init.d/mysqld
sed -i 's#^thread_concurrency = 8#& \ndatadir = '$DATA_PATH' \nbasedir = '$INSTALL_PATH' \nlog-error = '$INSTALL_PATH'/mysql_error.log \npid-file = '$INSTALL_PATH'/data/mysql.pid \ndefault-storage-engine=MyISAM \nuser = mysql#g' /etc/my.cnf
$INSTALL_PATH/scripts/mysql_install_db --user=mysql --basedir=$INSTALL_PATH --datadir=$DATA_PATH
chmod +x /etc/init.d/mysqld


sed -i "s#^basedir=#basedir="$INSTALL_PATH"#g" /etc/init.d/mysqld
sed -i "s#^datadir=#datadir="$DATA_PATH"#g" /etc/init.d/mysqld


chkconfig --add mysqld
chkconfig --level 345 mysqld on


export PATH=/usr/local/mysql/bin:$PATH


ln -s $INSTALL_PATH/bin/mysql /usr/bin


echo "------------------------------------------------------------------------------------------"
echo "------------------------mysql install successful,congratulations!-------------------------"
echo "------------------------------------------------------------------------------------------"

把执行的包和执行文件放在同一目录

执行成功完毕后需要的一些操作:

修改数据库密码:

直接myslq进入数据库:

mysql> use mysql;
mysql> update user set password=password("tradease@2017") where user='root';
mysql> flush privileges;
mysql> exit;     

/**运行远程连接**/
use mysql;
UPDATE user SET `Host` = '%' WHERE `User` = 'root' and Host='::1' LIMIT 1;
flush privileges;

0 0
原创粉丝点击