zoukankan      html  css  js  c++  java
  • CentOS 7 用yum安装 MySQL

    首先CentOS7 已经不支持mysql,因为收费了你懂得,所以内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb,以下为卸载mariadb,安装mysql的步骤。

    1.列出所有被安装的rpm package

    $ rpm -qa | grep mariadb
    

     2.卸载

    $ rpm -e mariadb-libs-5.5.37-1.el7_0.x86_64  // 注意“版本号”根据当前系统显示的版本信息的为准
    

     卸载过程中如有以下提示,则可以通过强制卸载

    错误:依赖检测失败:
    libmysqlclient.so.18()(64bit) 被 (已安裝) postfix-2:2.10.1-6.el7.x86_64 需要
    libmysqlclient.so.18(libmysqlclient_18)(64bit) 被 (已安裝) postfix-2:2.10.1-6.el7.x86_64 需要
    

     强制卸载:

    $ rpm -e --nodeps mariadb-libs-5.5.37-1.el7_0.x86_64 // 只是多了一个  --nodeps 参数,注意“版本号”根据当前系统显示的版本信息的为准
    

     3.安装依赖项

    $ yum install vim libaio net-tools
    

     其他情况:

      1.centos下yum暂时没有mysql-server直接安装包;

         MariaDB是MySQL社区开发的分支,也是一个增强型的替代品;

      2.安装MariaDB

    $ yum -y install mariadb-server mariadb mariadb-devel
    $ systemctl start mariadb
    $ systemctl enable mariadb
    $ mysql_secure_installation
    $ firewall-cmd --permanent --add-service mysql
    $ systemctl restart firewalld.service
    $ iptables -L -n|grep 3306
    

     4.安装 mysql的repo源

      4.1 下载mysql的repo源

    $ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
    

        4.2 安装mysql-community-release-el7-5.noarch.rpm包

    $ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
    // 安装这个包后,会获得两个mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。

           4.3 安装 mysql

    $ sudo yum install mysql-server
    

      根据步骤安装就可以了,不过安装完成后,没有密码,需要重置密码。

      4.4 重置密码

        重置密码前,首先要登录

    $ mysql -u root
    

      4.5 mysql 登录报错处理

        登录时有可能报这样的错:

        ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),

        原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户:

    $ sudo chown -R openscanner:openscanner /var/lib/mysql    // openscanner:openscanner 为当前登录CentOS的用户名,例如: root:root
    

         然后,重启服务:

    $ service mysqld restart
    

        接下来登录重置密码:

    $ mysql -u root
    
    mysql > use mysql;
    
    mysql > update user set password=password(‘123456‘) where user=‘root‘;
    
    mysql > exit;
    

     5.开放防火墙 3306端口

      5.1 查看防火墙状态

    $ systemctl status firewalld
    

        5.2 开启防火墙 服务

    $ systemctl start firewalld
    

      5.3 开放指定端口

    // --permanent 永久生效,没有此参数重启后失效
    $ firewall-cmd --zone=public --add-port=3306/tcp --permanent 
    或者
    $ firewall-cmd --zone=public --add-port=3300-3399/tcp --permanent
    

      5.4 重新载入

    $ firewall-cmd --reload
    

      5.5 查看状态

    $ firewall-cmd --zone=public --query-port=3306/tcp
    

       5.6 删除某个开放的端口

    $ firewall-cmd --zone=public --remove-port=80/tcp --permanent
    

       5.7 iptables 防火墙

        也可以还原传统的管理方式使用 iptables

    $ systemctl stop firewalld  
    $ systemctl mask firewalld  
    

       5.7.1 安装 iptables-services

    $ yum install iptables-services  
    

         5.7.2 设置开机启动

    $ systemctl enable iptables
    

       5.7.3 操作命令

    $ systemctl stop iptables  
    $ systemctl start iptables  
    $ systemctl restart iptables  
    $ systemctl reload iptables 
    

       5.7.4 保存设置

    $ service iptables save
    

       5.7.5 放某个端口 在 /etc/sysconfig/iptables 里添加

    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080
    
  • 相关阅读:
    字符串作为map的key
    类成员函数模板特化
    函数模板特化
    linux 下第一个Libevent代码学习
    linux下libevent安装
    随笔
    SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
    字符串处理总结之一(C#String类)
    XPath语法 在C#中使用XPath示例
    C#代码实现邮箱验证C#中及一些常用的正则表达式
  • 原文地址:https://www.cnblogs.com/qiushuiwanyue/p/14054034.html
Copyright © 2011-2022 走看看