安装包下载
https://dev.mysql.com/downloads/mysql/
根据系统版本下载
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/c0f7577579f069e0.jpeg)
安装新版mysql前,需将系统自带的mariadb-lib卸载
[root@hadoop ~]
mariadb-libs-5.5.52-1.el7.x86_64
[root@hadoop ~]
[root@hadoop ~]
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/7a3116a388dc06d0.jpeg)
解压安装包
tar -xvf mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/df92294386b3efb3.jpeg)
安装
rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/accb194ff8816076.jpeg)
rpm -ivh mysql-community-libs-5.7.20-1.el7.x86_64.rpm
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/fb1808e6e51b96be.jpeg)
rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/53a9252f689abd73.jpeg)
在安装之前需要安装libaio
[root@hadoop app]
libaio-0.3.109-13.el7.x86_64
如果不存需要下载离线包:
http://mirror.centos.org/centos/6/os/x86_64/Packages/
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/dd8dd411d00d553a.jpeg)
安装libaio库:
rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm(若在有网情况下可执行yum install libaio)
安装server
rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/ff34848bf1127d1e.jpeg)
初始化数据库
// 指定datadir, 执行后会生成~/.mysql_secret密码文件(5.7以后不在使用)
[root@slave mytmp]
// 初始化,执行生会在/var/log/mysqld.log生成随机密码
[root@slave mytmp]
更改mysql数据库目录的所属用户及其所属组(没用创建mysql用户)
chown mysql:mysql /var/lib/mysql -R
启动mysql
systemctl start mysqld.service
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/56e78b810aeab23b.jpeg)
问题分析
Process: 5924 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=1/FAILURE)
跟踪日志/var/log/mysqld.log
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/733ff0be5584725f.jpeg)
授权
chmod -R 777 mysql
查看效果
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/90a779319072c6ff.jpeg)
登录到mysql,更改root用户的密码
命令可以查看初始密码
grep 'temporary password' /var/log/mysqld.log
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/d280bb48b21c65ab.jpeg)
set password=password('123456a?');
创建用户,及作权限分配
CREATE USER 'sunld'@'%' IDENTIFIED BY '123456a?';
GRANT ALL PRIVILEGES ON *.* TO 'sunld'@'%';
flush privileges;
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/3f92bb3b8b275d44.jpeg)
远程登陆授权
grant all privileges on *.* to 'root'@'%' identified by '123456a?' with grant option;
flush privileges;
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/7a2e19a46e11a7ee.jpeg)
设置mysql开机启动
systemctl list-unit-files | grep mysqld
![这里写图片描述](https://img1.php1.cn/3cd4a/24cea/5a0/a3c69e4bde70e5d2.jpeg)
systemctl enable mysqld.service
默认配置文件路径:
配置文件:/etc/my.cnf
日志文件:/var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid
配置默认编码为utf8
修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:
[mysqld]
character_set_server=utf8
init_cOnnect='SET NAMES utf8'