> CentOS > CentOS教程 >

centos7下使用yum安装mysql

CentOS7的yum源中默认好像是没有mysql的。为了解决这个问题,我们要先下载mysql的repo源。

1. 下载mysql的repo源

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

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。

3. 安装mysql

?
 
sudo yum install mysql-server

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

4. 重置密码

重置密码前,首先要登录

?
 
$ mysql -u root

登录时有可能报这样的错: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

然后,重启服务:

?
 
$ service mysqld restart

接下来登录重置密码:

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

5. 开放3306端口

?
 
sudo vim /etc/sysconfig/iptables

添加以下内容:

?
 
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

保存后重启防火墙:

?
 
sudo service iptables restart

这样从其它客户机也可以连接上mysql服务了。


 

 

 

 

 

 

CentOS系统中那么忘记了mysql的登录密码,怎么办?使用安全模式吧.

首先需要在CentOS系统中停止mysql:

#service mysqld stop
#/usr/bin/mysqld_safe --skip-grant-tables &

下面在CentOS系统继续输入:
msql> mysql -u root -p

下面的密码直接键入回车即可.

下面既是在CentOS系统重新设置密码: 
mysql> update mysql.user set password=password("新密码") where user="root";

刷新权限 
mysql>flush privileges;

退出 
mysql>exit;

启动mysql,继续以往的登录动作即可. 
# /rc.d/init.d/mysqld start 

# mysql -u root -p

这样,我们就应该可以在CentOS系统不怕丢失mysql的登录密码了。希望大家可以一样的学习好CentOS系统。

 

 

 

 

一、配置防火墙,开启80端口、3306端口

CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。

1、关闭firewall:

#停止firewall服务

  1. systemctl stop firewalld.service

#禁止firewall开机启动

  1. systemctl disable firewalld.service

 

 

2、安装iptables防火墙

#安装

  1. yum install iptables-services

#编辑防火墙配置文件 

  1. vi /etc/sysconfig/iptables

 

 

# Firewall configuration written by system-config-firewall

# Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT

:wq! #保存退出
 

 #最后重启防火墙使配置生效

  1. systemctl restart iptables.service

#设置防火墙开机启动

  1. systemctl enable iptables.service

 

 

二、关闭SELINUX
#修改配置文件

  1. vi /etc/selinux/config

 

#SELINUX=enforcing #注释掉

#SELINUXTYPE=targeted #注释掉

SELINUX=disabled #增加

:wq! #保存退出

#使配置立即生效

  1. setenforce 0



(责任编辑:IT)