Suse服务器mysql 8安装

本文介绍了在SUSE服务器上安装MySQL 8.0的步骤,包括下载安装包、解决依赖问题、登录MySQL及处理常见问题,如忘记密码、安全策略调整、用户管理和连接数据库等。

安装包下载

登录mysql官网下载MySQL的安装包,本文以RPM Bundle安装包为例,该安装包包含安装mysql需要的所有rpm包。
在这里插入图片描述

安装rpm包

将下载的安装包上传到服务器,然后把安装包解压。

tar -xvf mysql-8.0.19-1.sl15.x86_64.rpm-bundle.tar

解压完成的rpm包如下图
在这里插入图片描述
使用rpm命令依次安装mysql-community-common-8.0.19-1.sl15.x86_64.rpm、mysql-community-libs-8.0.19-1.sl15.x86_64.rpm、mysql-community-client-8.0.19-1.sl15.x86_64.rpm、mysql-community-server-8.0.19-1.sl15.x86_64.rpm包

rpm -i mysql-community-common-8.0.19-1.sl15.x86_64.rpm
rpm -i mysql-community-libs-8.0.19-1.sl15.x86_64.rpm
rpm -i mysql-community-client-8.0.19-1.sl15.x86_64.rpm
rpm -i mysql-community-server-8.0.19-1.sl15.x86_64.rpm

如果在安装时有缺少依赖的报错,可先尝试安装相关依赖,如果安装依赖失败,可通过添加–force --nodeps跳过依赖,如:

rpm -i mysql-community-client-8.0.19-1.sl15.x86_64.rpm --force --nodeps

登录mysql

安装完成后即可通过如下命令登录mysql(实际使用时建议密码单独输入)。初始密码可通过查看 /var/log/mysql/mysqld.log 或者 /var/log/mysqld.log 文件获得。若无法获得初始密码,见附录忘记密码章节。

mysql -u root -p 密码

附录:常见问题处理

1. 忘记登录密码

如果忘记了mysql的登录密码或者找不到初始密码,可安装此章节的方法处理。

  1. 跳过密码验证

    修改 /etc/my.cnf 文件,在文件末尾添加skip-grant-tables。然后重启mysql服务。

    service mysql restart
    
  2. 将root密码改为“ ”
    使用不验证的方式登录mysql,然后修改root密码为空。

    mysql -u root
    UPDATE user SET authentication_string = '' WHERE User = 'root';
    
  3. 重新开启密码验证
    修改 /etc/my.cnf 文件 ,去掉文件末尾的skip-grant-tables。然后重启mysql服务。

  4. 登录mysql,修改root密码。
    以空密码登录mysql,提示输入密码时直接回车,然后执行如下命令修改root密码。修改完成后退出mysql。

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
    quit;
    

    使用新的密码登录mysql,密码修改完成。

2. 安全策略

在修改mysql密码时发生如下报错,是由于密码不满足当前的安全策略,若对密码安全性要求不是特别高,可修改安全策略。
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

可通过如下命令查看安全策略:

SHOW VARIABLES LIKE 'validate_password%';

修改安全策略的方法如下:

set global validate_password.policy=0;
set global validate_password.length=1;

3. 用户管理

  1. 创建用户
    由于mysql 8 修改了默认的加密方式,之前的默认加密方式为mysql_native_password,现在修改为caching_sha2_password ,所以如果需要使用一些数据库客户端(如Sqlyog、Navicat for MySQL)连接mysql,需要指定加密方式为mysql_native_password。
    CREATE USER 'test'@'%' IDENTIFIED with mysql_native_password BY 'password';
    
  2. 设置用户权限
    授予部分权限:
    	GRANT SELECT,INSERT ON *.* TO 'test'@'%';
    	FLUSH PRIVILEGES;
    授予所有权限:
    	GRANT ALL PRIVILEGES ON *.* TO 'test'@'%';
    	FLUSH PRIVILEGES;
    
  3. 修改用户
    修改用户时默认会按该用户已设置的加密方式加密。
    USE mysql;
    ALTER USER 'test'@'localhost' IDENTIFIED BY 'password';
    

4. 连接mysql

使用Sqlyog或Navicat for MySQL连接数据库。

如果使用的是阿里云服务器,一定要记得设置安全组规则,否则无法连接数据库。其他服务器同理,保证3306端口可访问。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值