
1、将下载的包上传至服务端。
2、执行命令:rpm -qa |grep -i mysql 查看是否已安装过mysql
3、执行命令:rpm -qa |grep -i mariadb 查看是否有系统自带的mariadb,存在最好卸载掉避免冲突。
4、卸载mariadb软件包,执行命令:rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64
如出现错误提示:

这是存在依赖性关系导致,重新执行命令:yum remove mariadb-libs-5.5.60-1.el7_5.x86_64 来卸载。(yum remove + 包名 会检查依赖关系并一起移除)。

输入y 回车

再次检测一次是否卸载完成
![]()
mariadb卸载完成。
5、解压rpm文件压缩包,执行命令: tar -zxvf mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar
如出现如下错误:

重新使用命令: tar -vxf mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar 解压。

下面就是解压出来的文件:

一般只安装其中四个包:

6、依次执行四个安装命令:
1.rpm -ivh mysql-community-common-5.7.21-1.el7.x86_64.rpm

2.rpm -ivh mysql-community-libs-5.7.21-1.el7.x86_64.rpm

3.rpm -ivh mysql-community-client-5.7.21-1.el7.x86_64.rpm

4.rpm -ivh mysql-community-server-5.7.21-1.el7.x86_64.rpm
如出现如下错误:

表示缺少libaio包,安装一下即可。
执行命令:yum search libaio 检索相关信息。

执行安装命令: yum install libaio-devel.x86_64 -y 进行安装。
执行命令:rpm -aq libaio 查看是否安装。
![]()
安装libaio成功。
重新执行:rpm -ivh mysql-community-server-5.7.21-1.el7.x86_64.rpm 完成刚才安装失败的server包。

OK,四个包安装完成。
7、数据库初始化:
(为了保证数据库目录为与文件的所有者为 mysql 登陆用户,如果你是以 root 身份运行 mysql 服务,需要执行初始化命令:mysqld --initialize --user=mysql ,如果是以 mysql 身份运行,则可以去掉 --user 选项。)
这里我们执行命令:mysqld --initialize --user=mysql 即可。
![]()
8、执行命令查看日志里面的临时密码:cat /var/log/mysqld.log

复制记住临时密码。
9、启动mysql服务:
执行命令:systemctl start mysqld.service
执行命令:service mysqld status 查看启动状态

启动成功。
10、登录root账号,执行命令:mysql -uroot -p
![]()
输入刚才的临时密码,回车。

OK,登录成功。
11、登陆后需要立即修改root账号密码:
执行命令:alter user 'root'@'localhost' identified by '新密码';
否则会报错如下:

12、修改完密码之后,可以查看mysql用户
依次执行:
use mysql;
select user, host from user;

此时root账号应该只能本机登录,一般需要改成外网远程连接。
13、继续执行命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '新密码' WITH GRANT OPTION;
flush privileges; 刷新权限
再次查看:

14、重启mysql服务:service mysqld restart
现在即可远程登录(注意:如防火墙打开了,需要开启3306端口,未开防火墙不管)。
(另外,各家云服务器需要去平台开通端口)。
【提示:本方案安装路径全为默认路径】
附:更改data路径及binlog配置(在执行mysqld --initialize --user=mysql之前):
eg:
1、创建文件夹:mkdir /data/datadir/mysql
2、创建文件夹: mkdir /data/datadir/binlog2sql
3、执行 chown -R mysql:mysql /data/datadir/binlog2sql
4、执行 chown -R mysql:mysql /data/datadir/mysql
5、执行:vi /etc/my.cnf
6、将配置文件改成(仅供参考):
[client]
port=3306
default-character-set=utf8
socket=/data/datadir/mysql/mysql.sock
[mysqld]
port=3306
character-set-server=utf8
datadir=/data/datadir/mysql
socket= /data/datadir/mysql/mysql.sock
connect_timeout=60
net_read_timeout=600
net_write_timeout=180
wait_timeout=86400
interactive_timeout=86400
max_allowed_packet=512M
lower_case_table_names=1
log-bin-trust-function-creators=1
server_id=1
log-bin=/data/datadir/binlog2sql/mysql-bin
binlog-format=ROW
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[mysql]
socket=/data/datadir/mysql/mysql.sock
5、执行初始化操作(即执行mysqld --initialize --user=mysql),接下来按上面正常步骤继续执行。
rpm安装默认目录:
数据文件目录:/var/lib/mysql/
配置文件模板:/usr/share/mysql(mysql.server命令及配置文件)
mysql客户端工具目录:/usr/bin(mysqladmin mysqldump等命令)
启动脚本:/etc/rc.d/init.d/(启动脚本文件mysql的目录)
日志目录:/var/log/
pid,sock文件目录:/tmp/
............
MySQL 5.7 安装与配置教程
本文档详细介绍了在服务器上安装MySQL 5.7的步骤,包括检查现有数据库、卸载冲突软件、安装依赖、执行初始化、设置临时密码、启动服务、修改root密码、授权远程访问以及更改数据目录和binlog配置。过程中涉及的命令行操作和错误处理方法均作了详尽说明。
319

被折叠的 条评论
为什么被折叠?



