美文网首页
阿里云安装mysql8.0

阿里云安装mysql8.0

作者: 南飞孤鸿 | 来源:发表于2020-11-11 10:31 被阅读0次

    记录一下自己在阿里云安装mysql的过程和中间踩的一些坑

    一、卸载之前版本的mysql

    1.通过以下命令行,可以查看到之前安装的版本

    
    rpm -qa | grep mysql
    
    
    image

    如果列表有内容,就表示之前安装过,需要进行删除,如果列表没内容,可以跳过卸载部分

    2.删除之前安装的mysql

    先停止之前的mysql服务service mysqld stop

    使用命令行rpm -ev 包名,删除上面列表中的包文件

    rpm -ev mysql-community-client-plugins-8.0.22-1.el7.x86_64
    

    如果提示依赖包错误,则使用以下命令尝试

    rpm -ev mysql-community-client-plugins-8.0.22-1.el7.x86_64 --nodeps 
    

    如果提示错误:error: %preun(xxxxxx) scriptlet failed, exit status 1

    则用以下命令尝试

    rpm -ev --noscripts mysql-community-client-plugins-8.0.22-1.el7.x86_64
    

    3.查找之前mysql的目录,并且删除文件和库

    find / -name mysql

    image

    使用 rm -rf 文件名 命令行,删除之前的文件,如 rm -rf /var/spool/mail/mysql

    注意:卸载后/etc/my.cnf不会删除,需要进行手工删除 rm -rf /etc/my.cnf

    重复第一步,rpm -qa | grep mysql 再次查找机器是否安装mysql,如果没有结果,说明意见删除完成

    二、安装mysql

    1.创建安装目录

    使用命令行,创建一个mysql的安装路径,根据个人习惯,一般会在 /usr/service 目录下

    mkdir /usr/service/mysql
    

    创建目录后,命令行进入指定文件夹

    cd /usr/service/mysql 
    

    2.查找mysql链接

    进入mysql官网下载地址,点击 MySQL Yum Repository,找到对应系统的版本,点击download,跳转页面后,找到No thanks, just start my download.,右键弹窗中,有个复制连接地址,这样就可以获取到mysql的yum安装地址。

    Yum Repository
    download
    获取下载链接

    3.下载安装mysql

    1.下载
    cd进入之前的安装目录,找到下载链接后,使用命令行下载mysql

    wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
    

    2.安装
    下载完成后,输入命令行 yum localinstall my 后可以按 tab 键即可自动补全,补全的就是刚刚下载的mysql包名,这两个文件名要一致。

    yum localinstall mysql80-community-release-el7-3.noarch.rpm 
    
    下载安装
    安装过程中,会有一个输入询问,直接输入y就可以。安装过程等待一会儿,进度条走完后,命令行输入
    yum install mysql-community-server
    

    安装过程中,会再次出现一个输入询问,直接输入y就可以。出现以下截图样式,表示全部安装完成。

    安装完成
    3.基本操作命令

    启动 service mysqld start
    停止 service mysqld stop
    重启 service mysqld restart
    查看状态 service mysqld status

    通过以上命令行,就可以操作MySQL,进行启停等操作

    三、重置密码

    1. 开启免密码登陆 修改my.cnf文件 。命令行输入vim /etc/my.cnf ,查看my.cnf文件,在mysqld模块下面添加:skip-grant-tables 保存退出。

    2.重启服务器,让配置生效。service mysqld restart
    3.登录mysql,命令行输入mysql -u root -p ,命令行会让输入密码,这里不输入,直接敲回车,就可以
    4.修改全局设置,降低密码要求等级

    mysql8.0以上版本修改密码方式与以前版本不同,密码格式要求至少包含了数字、字母及特殊字符三种,如果想跟以前一样设置常规密码,需要降低密码等级,如果计划设置复制密码,就可以跳过这一步。

    查看8.0版本的变量名 SHOW VARIABLES LIKE 'validate_password%';
    使用以下命令进行配置修改

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

    再次输入SHOW VARIABLES LIKE 'validate_password%';会发现等级已经降低

    默认设置
    修改后的设置

    5.修改密码
    依次输入以下命令行,就可以修改密码,注意语句后面都要带;号

    使用数据库 use mysql;
    置空之前的密码 update user set authentication_string='' where user='root';
    刷新权限表 flush privileges;
    查看用户及host select user,host from user;
    修改root 密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root@123';

    退出mysql exit;
    6.关闭免密登录
    到这里,mysql修改密码已经完成,因为之前开启了免密登录,这时需要关闭此设置
    命令行输入vim /etc/my.cnf ,查看my.cnf文件,删除之前添加的skip-grant-tables 保存退出。重启mysql。再次登录,这时就必须要输入密码了,输入之前设置的密码,就可以登录mysql。

    四、允许远程访问

    1.服务器放开3306端口

    登录阿里云,找到ECS服务器,找到安全组,在安全组配置中,添加端口放行规则,端口范围:3306/3306,授权对象:0.0.0.0/0,其他默认就行

    2.授权远程访问

    放行端口后,使用navicat连接数据库报错:1130-host ... is not allowed to connect to this MySql server。这个报错,需要服务器运行mysql远程访问。
    1.连接mysql
    使用命令行 mysql -u root -p连接mysql,输入之前设置的密码,就可以进入mysql
    2.查看当前所有数据库:show databases;
    3.进入mysql数据库:use mysql;
    4.查看mysql数据库中所有的表: show tables;
    5.修改user表中的Host。update user set Host='%' where User='root';
    6.刷新权限表 flush privileges;
    7.退出 exit;
    这个时候使用navicat连接数据库就没问题了

    注意 如果设置运行外网访问(执行update user set Host='%' where User='root';)后,重置或者修改密码时,需要将ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root@123';要替换成ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root@123';。如果需要查看'root'@'后面具体用什么,可以进入mysql数据库,之后use mysql;使用,输入命令行select user,host from user;来查看

    查看root信息

    相关文章

      网友评论

          本文标题:阿里云安装mysql8.0

          本文链接:https://www.haomeiwen.com/subject/epkebktx.html