1. 前置说明
本文档采用CentOS7 + mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
2. 环境依赖
如果以前使用操作系统本机软件包管理系统(例如Yum或APT)安装了MySQL,则在使用本机二进 制文件安装时可能会遇到问题。确保以前的MySQL安装已完全删除(使用程序包管理系统),并 且所有其他文件(例如数据文件的旧版本)也已删除。您还应该检查配置文件(例
如 /etc/my.cnf 或 /etc/mysql 目录)并删除它们。
2.1 删除mysql配置文件
rm -r /etc/my.cnf
rm -r /usr/local/mysq
2.2 卸载系统自带的 mariadb
# 查询是否安装mariadb rpm -qa | grep ma
出现上图所示,则说明系统附带了mariadb(这是MySQL数据库的分支)
# 卸载
rpm -e mariadb-libs-5.5.64-1.el7.x86_64 --nodeps
注意mariadb-libs-5.5.64-1.el7.x86_64 此为上图查询得到的信息 如果有多个 则多个卸载
2.3 MySQL对 libaio 库有依赖性
yum install libaio
3. 上传及解压
通常我们会选择解压到/usr/local/mysql
解压后目录说明
目录 | 目录内容 |
bin | mysqld 服务器,客户端和实用程序 |
docs | 信息格式的MySQL手册 |
man | Unix手册页 |
include | 包含(头)文件 |
lib | 依赖库 |
share | 错误消息,字典和用于数据库安装的SQL |
support-files | 杂项支持文件 |
4. 安装
4.1 创建mysql用户和组
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
注意
因为仅出于所有权目的而不是登录目的才需要该用户,所以 useradd 命令使用 和 选项来创建对服务器主机没有登录权限的用户。如果您的用户 添加 不支持这些选
项,请忽略这些选项。
4.2 解压并设置符号链接
tar zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
cd /usr/local
ln -s /usr/local/mysql-5.7.28-linux-glibc2.12-x86_64 mysql
cd mysql
mkdir mysql-files
chown mysql:mysql mysql-files
chmod 750 mysql-files
5. 初始化及启动
#使用服务器初始化数据目录,包括mysql包含初始MySQL授权表的数据库,这些数据库确定如何允许用户连接到服务 器
bin/mysqld --initialize --user=mysql
# 初始化时会生成临时密码
#创建默认的SSL和RSA文件 bin/mysql_ssl_rsa_setup
bin/mysqld_safe --user=mysql &
6. 其他选项
6.1 添加进服务
cp support-files/mysql.server /etc/init.d/mysql.server
6.2 添加环境变量
jdk文章有写
6.3 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
6.4 设置允许远程登录
如果需要设置mysql账户允许远程登录 可以使用如下命令
grant all privileges on *.* to root@'%' identified by 'yourPassword' with grant
option;
flush privileges;
同时,你需要开放mysql端口供远程访问
#打开指定端口
firewall-cmd --zone=public --add-port=端口号/tcp --permanent #(--permanent永久生效,没有此参数重启后失效)
#刷新规则
firewall-cmd --reload
#此时指定的端口可以远程访问
#查看
firewall-cmd --zone= public --query-port=端口号/tcp
#删除
firewall-cmd --zone= public --remove-port=端口号/tcp --permanent
6.5 设置表名不区分大小写
修改 /etc/my.cnf 在[mysqld]下添加如下语句 lower_case_table_names=1
0 代表开启 即表名区分大小写
1 代表关闭 即表名不区分大小写
当然 此操作因为是修改了配置文件,所以 重启服务后生效