CentOS 7下源码安装MySQL 5.6(三)

2015-07-16 12:07:43 · 作者: · 浏览: 2

mysql_user="root"
mysql_pwd=""
CmdPath="/usr/local/mysql/bin"


#startup function


function_start_mysql()
{
printf "Starting MySQL...\n"
/bin/sh ${CmdPath}/mysqld_safe --defaults-file=/data/${port}/my.cnf 2>&1 > /dev/null &
}


#stop function


function_stop_mysql()
{
printf "Stoping MySQL...\n"


${CmdPath}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S /data/${port}/mysql.sock shutdown
}


#restart function


function_restart_mysql()
{
printf "Restarting MySQL...\n"


function_stop_mysql
sleep 2
function_start_mysql
}


case $1 in
start)
function_start_mysql
;;
stop)
function_stop_mysql
;;
restart)
function_restart_mysql
;;
*)
printf "Usage: /data/${port}/mysql {start|stop|restart}\n"
esac


?


修改文件拥有者和权限


[root@localhost 3307]# chown -R mysql:mysql /data


[root@localhost 3307]# find /data -name mysql -exec chmod 700 {} \;


添加mysql启动路径


?


[root@localhost 3307]# echo 'export PATH=$PATH:/usr/local/mysql/bin' >>/etc/profile


[root@localhost 3307]# source /etc/profile


[root@localhost 3307]# echo $PATH


/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin


?


可以看到mysql路径已经添加到了启动路径中


初始化数据库


?


[root@localhost scripts]# cd /usr/local/mysql/scripts


[root@localhost scripts]# ./mysql_install_db --defaults-file=/data/3306/my.cnf --user=mysql --basedir=/usr/local/mysql --datadir=/data/3306/data


[root@localhost scripts]# ./mysql_install_db --defaults-file=/data/3307/my.cnf --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307/data


?


配置防火墙


?


[root@localhost scripts]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success


[root@localhost scripts]# firewall-cmd --zone=public --add-port=3307/tcp --permanent
success


[root@localhost scripts]# firewall-cmd --reload
success


?


启动mysql


分别启动两个端口


?


[root@localhost scripts]# /data/3306/mysql start
Starting MySQL...


[root@localhost scripts]# /data/3307/mysql start
Starting MySQL...


[root@localhost scripts]# netstat -lntp | grep 330
tcp6 0 0 :::3306 :::* LISTEN 33556/mysqld
tcp6 0 0 :::3307 :::* LISTEN 34204/mysqld


?


可以看到两个端口都已经启动成功


登陆mysql


刚安装完的mysql是没有登陆密码的


[root@localhost scripts]# mysql -S /data/3306/mysql.sock


如果不成功,检查/data/3306/log目录下的mysql-error.log日志,逐一排除错误


如果登陆成功,下面就修改登录密码(不建议在shell环境下修改密码,否则别人只要查看命令历史就能看到密码(前提是你没有情况命令历史))


mysql> update mysql.user set password=password("123456") where user='root';
mysql> flush privileges;


同理,使用上面的方法修改3307的登陆密码


要把上面更改后的密码写回到mysql的启动文件中(否则每次启动、关闭、重启mysql都要输入密码)


[root@localhost 3306]# sed -i 's/mysql_pwd=\"\"/mysql_pwd=\"123456\"/g' /data/3306/mysql
[root@localhost 3306]# sed -i 's/mysql_pwd=\"\"/mysql_pwd=\"123456\"/g' /data/3307/mysql


注意把上面的123456改为设置的密码


重启mysql


[root@localhost 3306]# /data/3306/mysql restart
[root@localhost 3306]# netstat -lntp | grep 330
tcp6 0 0 :::3306 :::* LISTEN 35430/mysqld


可以看到3306端口重启成功,同理可以重启3307端口


至此,mysql-5.6.25在CentOS7上安装完毕


--------------------------------------分割线 --------------------------------------


--------------------------------------分割线 --------------------------------------