AWS 安装Mysql-5.7详细教程
在之前的文章中我们在自己的亚马逊服务器上部署了我们自己的博客系统,同事博客系统使用的是mysql数据库进行数据的存储,
那么在亚马逊的服务中有提供专门的数据库服务那就是 RDS实例,只要你在亚马逊上创建一个RDS实例,那么你就相当于拥有了一个安装好的mysql数据库供你使用,但是RDS在使用的过程中会根据你是用的量产生相关的费用,而且还不便宜,所以对于我们这些使用用来练手的人来说并不适合.所以我们采取另一种方式,手动在EC2服务器上安装mysql数据库
接下来我们详细的一步步完成安装过程
本次演练安装的mysql 版本是:mysql-5.7.26-linux-glibc2.12-x86_64
我服务器的环境如下:
还有一点,一定要使用root权限进行安装。
第一步:下载mysql数据库安装包
一、 第一种方式是从官网上下载对应的安装包上传到服务器
进入官网 https://dev.mysql.com/downloads/mysql/5.6.html#downloads
二、第二种是使用wget方式直接下载到服务器上
在你要放置安装包的目录下执行
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
第二步:解压并移动
首先说一下,移动不是必须的,但是我后面的配置里有指定文件目录,并且在Mac上安装mysql 默认也会放到 /usr/local ,所有最好按我的来。
解压和移动
tar -xzvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/
改名(改名和软连接,二选一)
mv mysql-5.7.26-linux-glibc2.12-x86_64/ mysql-5.7.26
想弄软连接命令 :
ln -s mysql-5.7.26-linux-glibc2.12-x86_64/ mysql-5.7.26
第三步:创建 用户,并给数据目录赋予权限
创建mysql组和用户
groupadd mysql
useradd -r -g mysql mysql
创建mysq数据目录
回到根目录
cd /
mkdir -p data
cd data/
mkdir -p mysql
赋予权限
chown mysql:mysql -R /data/mysql
第四步:配置参数
执行
vim /etc/my.cnf
然后 按 i 进入编辑模式,把下面内容复制进去
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql-5.7.26
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
编辑完后 按esc 后按住 shift+: 输入 wq表示保存并退出 。
第五步:初始化mysql
cd /usr/local/mysql-5.7.26/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql-5.7.26/ --datadir=/data/mysql/ --user=mysql --initialize
查看初始密码,复制出来
vim /data/mysql/mysql.err
第六步:启动mysql,并更改root 密码
启动
service mysqld start
遇到这样的错误,是由于 /etc/init.d/ 不存在 mysqld 这个命令(有的人安装完环境后存在,是因为你的安装包中有这样的命令将 mysql.server 文件 copy 到 /etc/init.d/ 下面了)
1·、首先你需要找到 mysql.server 文件,这个 和 mysqld 文件是一模一样的,只不过文件名不相同
find / -name mysql.server
2、copy mysql.server 文件到 /etc/init.d/ 目录下,重命名文件为 mysqld
cp /usr/local/mysql-5.7.26/support-files/mysql.server /etc/init.d/mysqld
查看是否启动
ps -ef|grep mysql
更改密码
cd /usr/local/mysql-5.7.26/bin
mysql -u root -p
提示输入密码,把刚才赋值的密码粘过来。
然后执行修改,并刷新
SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;
使用工具链接
这里主要执行下面三个命令(先登录数据库)
use mysql #访问mysql库
update user set host = '%' where user = 'root'; #使root能再任何host访问
FLUSH PRIVILEGES; #刷新
再次登录
ok!!!!MySQL5.7就装好了