此处选择了Linux - Generic Mysql5.7.28
的版本
下载地址:https://downloads.mysql.com/archives/community/
压缩包:mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
rpm -qa |grep mysql
systemctl stop mysqld.service
rpm -e —nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64
rpm -qa|grep mariadb
如果有,则卸载:
rpm -e —nodeps mariadb-libs-5.5.64-1.el7.x86_64
rpm -e —nodeps mariadb-5.5.64-1.el7.x86_64
rpm -e —nodeps mariadb-server-5.5.64-1.el7.x86_64
#查询残留的文件和相关依赖
find / -name mysql
#移除残留的的文件和相关依赖
rm -rf 文件目录
#例如:
rm -rf /var/lib/mysql
rm -rf /var/lib64/mysql
rm -rf /usr/share/mysql
rm -rf /usr/local/mysql
rpm -qa|grep -i mysql
#进入文件夹目录
cd /home/package
#执行解压指令
tar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
#得到压缩文件 mysql-5.7.28-linux-glibc2.12-x86_64
#移动文件至/usr/local/mysql-5.7.28并重命名
mv mysql-5.7.28-linux-glibc2.12-x86_64 /usr/local/mysql-5.7.28
#进入/usr/local/mysql-5.7.28
cd /usr/local/mysql-5.7.28
#创建data文件夹
mkdir data
#检查用户是否存在:
cat /etc/group|grep mysql
#没有则创建用户组:
groupadd mysql
#useradd -r参数表示mysql用户是系统用户,不可用于登录系统
useradd -r -g mysql mysql
#配置权限, 将/usr/local/mysql-5.7.28的所有者及所属组改为mysql:
chown -R mysql.mysql /usr/local/mysql-5.7.28
vim /etc/my.cnf
# 设置mysql客户端默认字符集
[mysql]
default-character-set=utf8
[mysqld]
#设置mysql的安装目录
basedir =/usr/local/mysql-5.7.28
#设置mysql数据库的数据存放目录
datadir = /usr/local/mysql-5.7.28/data
#设置端口
port = 3306
socket = /tmp/mysql.sock
#日志存放目录
log-error = /usr/local/mysql-5.7.28/data/mysqld.log
pid-file = /usr/local/mysql-5.7.28/data/mysqld.pid
#允许时间类型的数据为零(去掉NO_ZERO_IN_DATE,NO_ZERO_DATE)
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#初始化
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.28/ --datadir=/usr/local/mysql-5.7.28/data/
#如果报错
./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or destroy
#则安装libaio,如果没有则跳过,安装命令:
yum install libaio
cat /usr/local/mysql-5.7.28/data/mysqld.log
注意,该日志里蓝框中的是临时密码,等会登录数据库需要:
cp support-files/mysql.server /etc/init.d/mysql
service mysql start
如果这个命令无法启动,则使用
systemctl start mysqld.service
或者进入support-files里面手动启动
cd /usr/local/mysql-5.7.28/support-files
./mysql.server start
进入目录
cd /usr/local/mysql-5.7.28
连接mysql:
./bin/mysql -u root -p
这里的登录密码就是上面蓝框中的密码,下面是改密:
#第一次修改密码使用这个命令
mysql> set password=password('123456');
#后续想改密码则用这个
mysql> set password for root@localhost = password('mysql');
#创建root用户,并赋all权限, *.* 为所有库下所有表, 密码为123456 ,%为所有远程设备可以连接
mysql> grant all privileges on *.* to root@'%' identified by '123456';
#刷新权限
mysql> flush privileges;
mysql> use mysql;
mysql> update user set host=‘%’ where user = ‘root’;
mysql> flush privileges;
如果更改时报错:
ERROR 1062 (23000): Duplicate entry ‘%-root’ for key ‘PRIMARY’
就先查询一下是否已更改,最后执行刷新。
service mysql restart
或者 systemctl restart mysqld.service
至此,mysql安装完成。
以上就是今天要讲的内容,本文介绍了mysql 5.7.28的安装,喜欢就点个赞吧!