2019-06-10

MySQL5.7.20二进制安装脚本
练习:MySQL 5.7.20二进制安装步骤

MySQL有三种安装方式:二进制安装;源码安装;RPM包安装。这里推荐使用二进制安装方式

cat mysql-install.sh
#!/bin/bash
#
#mysql 5.7.20 binary system install script
mysql_install_bs() {
        cd $soft_dir
        tar xf $mysql_bs_version -C /usr/local
        mv /usr/local/${mysql_bs_version%.tar.gz} $mysql_prefix
        groupadd mysql && useradd -s /sbin/nologin -M -m mysql mysql
        mkdir -p /data/mysql
        chmod -R mysql.mysql $mysql_prefix /data
        echo "export PATH=$PATH:$mysql_prefix/bin" >>/etc/profile
        rpm -e `rpm -qa|grep mariadb` --nodeps
        yum -y install libaio-devel
}

cat mysql_config.sh
#!/bin/bash
#config conf
config() {
#tengine
\cp $config_dir/nginx.conf $nginx_prefix/conf/nginx.conf 
\cp $config_dir/index.php $nginx_prefix/html/index.php
\cp $php_prefix/etc/php-fpm.d/www.conf.default $php_prefix/etc/php-fpm.d/www.conf
$nginx_prefix/sbin/nginx
/etc/init.d/php-fpm start
#init mysql database 1:temp password
#       mysqld --initialize --user=mysql --basedir=$mysql_prefix  --datadir=/data/mysql
#init database 2:blank password 
        \rm -rf /data/mysql/*
        mysqld --initialize-insecure --user=mysql --basedir=$mysql_prefix  --datadir=/data/mysql
#mysql ver 5.6 init database:
#       mysql_install_db --initialize-insecure --user=mysql --basedir=$mysql_prefix  --datadir=/data/mysql
cat >>/etc/mysql.cnf<<-EOF
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
server_id=6
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
prompt=3306 [\\d]>
EOF

#method 1:cp mysqld conf to init.d
#       cp $mysql_prefix/support-files/mysql.server /etc/init.d/mysqld
         cd $mysql_prefix/support-files && ./mysql.server start
##method 2:systemctl
cat >>/etc/systemd/system/mysqld.service<<-EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE=5000
EOF
        systemctl start mysqld.service
}
[root@Manager system]# ss -tnl |grep 3306         
LISTEN      0      80                             :::3306                                       :::*     

总结:
1.MySQL5.7.20安装步骤与5.6有一些去区别,尽量使用生成空密码的方式

你可能感兴趣的:(2019-06-10)