一.准备工作

阿里云ecs刚购买时实例名是很长的随机字符串,不利于后续操作,第一步先进入阿里云控制平台修改自己的实例名称。

ecs自带mysql ecs部署数据库_阿里云

二.卸载自带 mariadb数据库

1. 查找当前安装列表

rpm -qa | grep mariadb

ecs自带mysql ecs部署数据库_ecs_02

2.卸载mariadb

rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64

3 .检查卸载干净没,可以看到已经没有列表了

rpm -qa | grep mariadb

ecs自带mysql ecs部署数据库_阿里云_03

三.正式安装mysql

1.系统约定

(利用xftp在相应位置建立文件夹)

安装文件下载目录:/data/software
Mysql目录安装位置:/usr/local/mysql
数据库保存位置:/data/mysql
日志保存位置:/data/log/mysql

2.下载mysql

在官网:http://dev.mysql.com/downloads/mysql/ 中,选择以下版本的mysql下载:

note:

下载的mysql后缀一定要一样,不一样的后缀安装方式不同。

ecs自带mysql ecs部署数据库_ecs_04


然后将下载好的文件,通过xftp工具,放入software文件夹下

ecs自带mysql ecs部署数据库_ecs自带mysql_05

3.解压压缩包到目标位置

cd /data/software
#解压压缩包
tar -xzvf /data/software/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
#移动并修改文件名
mv /data/software/mysql-5.7.21-linux-glibc2.12-x86_64 /usr/local/mysql

4.新建mysql用户、组及目录

# 新建一个msyql组
groupadd mysql
#新建msyql用户禁止登录shell
useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/mysql

5.改变目录属有者

cd /usr/local/mysql
pwd
#别忘了最后的.
chown -R mysql .
chgrp -R mysql .
chown -R mysql /data/mysql

ecs自带mysql ecs部署数据库_阿里云_06

6.配置参数

#初始化
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql

ecs自带mysql ecs部署数据库_linux_07


note:

此处需要注意记录生成的临时密码,如上文结尾处的:Q=*H-?&z6dhR

#开启ssl
bin/mysql_ssl_rsa_setup  --datadir=/data/mysql

note:

若在初始化过程中出错

ecs自带mysql ecs部署数据库_ecs自带mysql_08

bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
  • 需要先检查有无libaio
rpm -qa|grep libaio
  • 若没有则进行安装
yum install libaio-devel.x86_64

ecs自带mysql ecs部署数据库_阿里云_09


(无网也可以用rpm安装,未实验)

http://www.rpmfind.net/linux/rpm2html/search.php?query=libaio-devel(x86-64) https://centos.pkgs.org/7/centos-x86_64/libaio-devel-0.3.109-13.el7.x86_64.rpm.html

7.修改系统配置文件

复制一个cnf文件到etc文件夹下面,改名叫my.cnf

find / -iname '*.cnf' -print
cp /data/mysql/auto.cnf /etc/my.cnf

ecs自带mysql ecs部署数据库_ecs_10

cd /usr/local/mysql/support-files

ecs自带mysql ecs部署数据库_阿里云_11

#复制启动文件到指定目录并改名,方便之后做开机自启操作cp mysql.server /etc/init.d/mysqlvim /etc/init.d/mysql
#将mysql文件清空后加入
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
vim /etc/my.cnf
#清空后加入
[mysqld]
datadir=/data/mysql
[mysqld_safe]

8.启动mysql

# /etc/init.d/mysql start

#登陆
# mysql -hlocalhost -uroot -p

ecs自带mysql ecs部署数据库_linux_12

  • 修改密码
mysql> set password=password('199711044');

9.设置root账户权限,支持远程连接

grant all privileges on *.* to 'root'@'%' identified by '199711044';
  flush privileges;

or

grant all on *.* to root@'%' identified by '199711044'
flush privileges;

or

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '199711044' WITH GRANT OPTION;
flush privileges;

note:
如提示不能成功连接,可能需要添加需要监听的端口(暴力方法直接关闭防火墙)

/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

10.在ecs开启3306端口

ecs自带mysql ecs部署数据库_ecs_13

11.添加系统路径

vim /etc/profile

添加:

export PATH=/usr/local/mysql/bin:$PATH
#保存配置
source /etc/profile

12.配置mysql自动启动

  • 将服务文件拷贝到init.d下,并重命名为mysql(之前已做)
  • 赋予可执行权限
chmod 755 /etc/init.d/mysql
  • 添加服务
chkconfig --add mysql
  • 打开mysql345服务
chkconfig --level 345 mysql on
  • 验证
netstat -na | grep 3306

如果看到有监听说明服务启动了