CentOS7使用yum安装mysql

来源:互联网 发布:app源码模板下载 编辑:程序博客网 时间:2024/05/16 07:24

CentOS7默认数据库是mariadb,使用mysql需要先下载

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密码

$ 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 root:root /var/lib/mysql

重启mysql服务

$ service mysqld restart

接下来登录重置密码:

$ mysql -u root  //直接回车进入mysql控制台
mysql > use mysql;
mysql > update user set password=password('123456') where user='root';

mysql > exit;

如果还没有修改成功可以刷新一下FLUSH PRIVILEGES或者重新启动service mysqld restart

5.如果外网访问不到

登录到数据库mysql -u root -p

使用数据库use mysql

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION 

第一句中"%"表示任何主机都可以远程登录到该服务器上访问。如果要限制只有某台机器可以访问,将其换成相应的IP即可.

允许任何主机访问数据的权限 

FLUSH PRIVILEGES  

修改生效 

如果外网还是访问不到可能的原因还有3306端口没有开放

6.开启3306端口及常用的其它端口

查看是否有这个文件/etc/sysconfig/iptables,如果没有

iptables -P OUTPUT ACCEPT

service iptables save 进行保存,默认就保存到了/etc/sysconfig目录下的iptables文件中

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT   #允许3306数据库端口通过防火墙

service iptables save

cat /etc/sysconfig/iptables有3306这条信息

service iptables restart就ok咯

可以直接把开放端口的命令写到配置文件中,开机时直接读取执行

以上基本就是我从网上安装mysql的步骤了,因为搜索的东西基本没有一次性成功的,所以自己整理了一下.

原创粉丝点击