Linux Redhat下使用bundle包安装MySQL 8.x(Windows VMware下)

时间:2024-03-15 07:30:54

为什么要使用bundle包安装呢?

因为bundle包下载下来后,就可以不需要联网直接进行安装,里面包含的组件最全,但是一般自己使用基本只需要其中的四个包即可,具体见下面步骤。

安装环境:Linux rehel6 64位

MySQL8.x安装包: mysql-libs-5.1.73-7.el6.x86_64(官方下载地址: https://dev.mysql.com/downloads/mysql/

安装步骤:

1. 检查是否含有之前的mysql包,若有,则删除。

rpm -qa|grep -i mysql

Linux Redhat下使用bundle包安装MySQL 8.x(Windows VMware下)

如果执行删除命令时报错:需要依赖postfix包,执行如下命令即可删除:

rpm -ev mysql-libs-5.1.73-7.el6.x86_64 --nodeps

注:--nodeps:不检查依赖关系

2. 安装MySQL 8.0(Root权限)

2.1 解压安装包

tar xvf mysql-8.0.15-1.el6.x86_64.rpm-bundle.tar

2.2 安装时需要按照以下顺序进行安装rpm包,因为它们之间存在依赖关系

rpm -ivh mysql-community-common-8.0.15-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.15-1.el6.x86_64.rpm
rpm -ivh mysql-community-client-8.0.15-1.el6.x86_64.rpm
rpm -ivh mysql-community-server-8.0.15-1.el6.x86_64.rpm

Linux Redhat下使用bundle包安装MySQL 8.x(Windows VMware下)

3. 启动服务

3.1 查看mysql是否启动

service mysqld status

3.2 启动mysql

service mysqld start

3.3 停止mysql

service mysqld stop

4. 启动服务后,设置mysql的root用户密码

4.1 mysql安装完成之后我们是没有设置密码的,但是mysql为我们设置了一个临时的密码,我们可以查看mysql的日志知道这个临时密码。

grep password /var/log/mysqld.log

4.2 登录mysql,输入4.1步骤从日志中获取的密码

mysql -uroot -p

4.3 设置新密码

> ALTER user 'root'@'localhost' IDENTIFIED BY '123456';

4.4 退出当前登录

> quit;

5. 增加远程访问IP地址权限,以便使用Navicat进行配置连接

5.1 登录mysql,并切换至mysql库

mysql -uroot -p
> use mysql

5.2 更新域属性

> update user set host='%' where user ='root';

注:'%'表示允许外部任意IP访问

5.3 刷新MySQL的系统权限

> FLUSH PRIVILEGES;

将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。

5.4 查看用户信息。

> select host,user,plugin from user;

5.5 查询root用户的权限

> SHOW GRANTS FOR root;

5.6 遇到的问题1:本地连接虚拟机中Oracle失败。

原因之一:防火墙没有设置白名单。本地telnet虚拟机Oracle地址不通,是防火墙没有关闭 3306 端口,可使用如下命令将 3306 端口设置为白名单(一定要将命令写在reject之前,不然会不起作用的。):

sudo vi /etc/sysconfig/iptables
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
sudo service iptables restart
sudo service iptables save
sudo iptables -L -n

Linux Redhat下使用bundle包安装MySQL 8.x(Windows VMware下)

5.7 遇到的问题2:Windows下的Navicat连接MySQL数据库报错。

原因之一:MySQL 8.0的密码加密方式变了。MySQL 8.0用的密码加密方式默认是caching_sha2_password,之前的密码加密方式是 mysql_native_password ,而Navicat12之前的版本支持mysql_native_password密码加密方式,所以需要修改用户的密码加密方式,使用如下命令:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

6. 卸载MySQL数据库

rpm -qa|grep -i mysql
rpm -ev mysql-community-server-8.0.15-1.el6.x86_64
rpm -ev mysql-community-client-8.0.15-1.el6.x86_64
rpm -ev mysql-community-libs-8.0.15-1.el6.x86_64
rpm -ev mysql-community-common-8.0.15-1.el6.x86_64

7. 其他命令

service mysqld restart //重启mysql
select user();         // 查看当前用户
select version();      // 查看mysql版本
select database();     // 查看当前所在的库
user mysql;            // 切换至mysql库
CREATE USER daydayup IDENTIFIED BY 'pass123';// 为mysql库创建用户: daydayup 密码为: pass123

8. 参考链接

mysql8.0操作

mysql8.0使用笔记

Linux安装和使用MySQL8.0教程

最后,谢谢各位读者的耐心阅读,如有语句不通顺或者不准确的地方,大家也可以提提改善的意见!谢谢!(^__^)