centos 离线安装 mysql 5.7

1 . 安装新版mysql前,需将系统自带的mariadb-lib卸载。

rpm -qa|grep mariadb
mariadb-libs-5.5.44-2.el7.centos.x86_64
rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

2.上传压缩包并解压

已经所有rpm包上传到百度云,下载地址:

链接:https://pan.baidu.com/s/1EcHodnqKlp0zgrVs0ha79Q 提取码:f5jx

3 . 使用rpm -ivh命令依次进行安装;以下步骤需要root权限。且因包之间的依赖关系,各rpm命令必须按序执行。

rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm 
rpm -ivh mysql-community-libs-5.7.20-1.el7.x86_64.rpm 
rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm
rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm
rpm -ivh net-tools-2.0-0.24.20131004git.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm

如果需要修改默认数据目录,则需要修改my.cnf配置文件(使用默认的数据目录则忽略此命令)

vim /etc/my.cnf //打开配置文件

datadir=/mnt/disk/mysql/data //修改datadir目录为指定目录

4.初始化数据库。

// 指定datadir, 执行后会生成~/.mysql_secret密码文件

mysql_install_db --datadir=/var/lib/mysql //注意目录路径需要和配置文件my.cnf datadir 保持一致

// 初始化,执行生会在/var/log/mysqld.log生成随机密码

mysqld --initialize

5 .创建用户和用户组

groupadd mysql
useradd -g mysql -r mysql
chown mysql:mysql /var/lib/mysql -R
// 将mysql安装目录赋给mysql
systemctl start mysqld.service

6 .修改密码

由于一开始并不知道密码,先修改配置文件/etc/my.cnf令MySQL跳过登录时的权限检验。加入一行:skip-grant-tables

重启MySQL:

systemctl restart mysqld

免密码登录MySQL:

mysql -u root -p

## 连续敲两下'回车键'

use mysql;

修改root用户密码:

 UPDATE user SET authentication_string = password('密码') WHERE host = 'localhost' AND user = 'root';

最后修改配置文件/etc/my.cnf 删除此前新增那一行skip-grant-tables,并重启MySQL。这一步非常重要,不执行可能导致严重的安全问题。

#设置开机启动
systemctl enable mysqld

创建数据库及用户

CREATE DATABASE `unitcomcmpdb` CHARACTER SET utf8 COLLATE utf8_general_ci;

create user 'uni_user'@'%' identified by '密码'; grant create user on *.* to uni_user; grant grant option on *.* to uni_user; grant select,update,delete,insert on mysql.* to uni_user; flush privileges;

  

原文地址:https://www.cnblogs.com/oceanwang/p/10695102.html