zoukankan      html  css  js  c++  java
  • linux系统安装mysql yum方式

    起初我是想用tar包安装的,但是奈何我死活无法从官网上下载mysql.tar包,所以改用了yum方式

    一、查看系统是否已经存在mysql,有则卸载(参考博文:https://www.cnblogs.com/javabg/p/9970723.html

    (yum安装是最简便和稳定的安装方式,centos7默认安装的是mariadb,需要先卸载mariadb,先查看是否安装mariadb

    rpm -qa | grep mariadb

    如果找到,则拷贝结果,使用下面命令删除,如删除mariadb-libs-5.5.35-3.el7.x86_64

    rpm -e --nodeps mariadb-libs-5.5.35-3.el7.x86_64)

    1.卸载  先停掉mysql进程   没有安装过的可以直接跳过

            pkill -9 mysqld

    2、rpm -qa|grep -i mysql

    3、用命令 yum -y remove

          yum -y remove mysql-community-client-5.6.38-2.el7.x86_64

          卸载不掉的用 rpm -ev 

          依次卸载 直到没有

    二、下载安装

     cd /usr/mysql(我自己创建的)

    1.安装rpm包

    直接使用yum -y install 命令安装mysql是无法安装mysql的高级版本,需要先安装带有可用的mysql5系列社区版资源的rpm包,输入如下命令进行安装。

    命令:rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

    (有的博文是这样做的:

    wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
    yum -y install mysql57-community-release-el7-10.noarch.rpm
    yum -y install mysql-community-server)

    2.查看mysql可用版本

    命令:yum repolist enabled | grep "mysql.*-community.*"

    3、输入如下命令开始安装mysql

    命令:yum -y install mysql-community-server

    可以使用命令让mysql服务加入开机启动(可选):systemctl enable mysqld

    4.  启动mysql服务

    (service mysqld restart  有人这样启动)

     systemctl start  mysqld.service  启动命令

    systemctl status mysqld.service  查看状态命令

     重置密码,先获取原始密码,如下(使用初始密码,不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:)

        [root@localhost ~]# grep "password" /var/log/mysqld.log   

      mysql -uroot -p     # 回车后会提示输入密码

    mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';

    执行这个可能会报错,因为密码过于简单

    MySQL有密码设置的规范,具体是与validate_password_policy的值有关

    MySQL完整的初始密码规则可以通过如下命令查看:SHOW VARIABLES LIKE 'validate_password%';

    这时候我们要把密码规则改一下,执行下面sql就可以了:

     set global validate_password_policy=0;

     set global validate_password_length=1;

    设置之后就是我上面查出来的那几个值了,此时密码就可以设置的很简单,例如1234之类的。到此数据库的密码设置就完成了。

     但此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:

     yum -y remove mysql57-community-release-el7-10.noarch

    操作完成上面的,现在还不能用可视化的客户端进行连接,需要我们进行授权:

    grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
    flush privileges;
    (如果想限制只能让指定IP登录请把%替换成IP地址)
    然后使用navicat连接mysql,可能还会报错
    先退出mysql:exit
    然后需要使用命令永久开放3306端口:firewall-cmd --zone=public --add-port=3306/tcp --permanent
    重载防火墙: firewall-cmd --reload
    查看是否有监听端口使用情况:netstat -nalp|grep 3306
     

     按上述操作发现不行,还是连接不上

    有人说要设置my.cnf中mysql的绑定地址(参考博文 : https://blog.csdn.net/qq_39206238/article/details/80351803

    找到:bind-address = 127.0.0.1

    去除 IP 地址绑定,把它改为:bind-address = 0.0.0.0

    使用 whereis my.cnf 命令,可以查找该文件的位置

    进入mysql cmd,mysql>status;将显示当前mysql的version的各种信息。 方法二:还是在mysql的cmd下,输入:mysql>show global variables like 'port'; 将显示端口号方法三:打开mysql的 配置文件 my.ini进入后直接查看 port

    期间操作命令用到了

    mysql -uroot -p

    use mysql 

    select user,host from user;

    结果我的navicat还是连接不上,找了一圈发现,是因为我用的linux服务器是阿里云的,我的连接请求被阿里云安全组规则拦住了,解决如下:

     点击实例ID进入以下界面:

     点击安全组进入安全组配置:

     具体配置参考如下:

    https://help.aliyun.com/document_detail/25475.html?spm=5176.2020520101.0.0.13cf4df5h5auou#d14e17

    解决!!!!

  • 相关阅读:
    Python学习 :面向对象 -- 三大特性
    Python学习 :面向对象(一)
    小米oj #40 找小“3”
    第三次作业
    排序算法模板
    树状数组求逆序数
    最短路模板
    字典树模板
    LCS
    多项式朴素乘法
  • 原文地址:https://www.cnblogs.com/tianhaichao/p/12485105.html
Copyright © 2011-2022 走看看