【CNMP系列】CentOS7.0下安装MySql5.6服务

接上一回的话,CentOS7.0下安装好了Nginx服务,对于我们的CNMP,我们可以开始我们的M啦,就是传统意义上的MySql服务

MySql简介

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。

官网:https://www.mysql.com/

与其他大型数据库例如 OracleDB2SQL Server等相比,MySQL 自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于 MySQ L是开放源码软件,因此可以大大降低总体拥有成本。

总体来讲,MySql的特点就是,开源,轻量,社区活跃。

MySql获取

CentOS7.0 mini版上默认是没有安装MySql服务的,所以,我们需要自行安装。

MySql的安装有两种形式,yum安装和源码安装,个人推荐源码安装。(因为没有找到源代码,后续有机会奉上源代码安装的博文,今天介绍二进制码的安装)

首先,需要到官网找到MySql的源。来到官网,我们可以看到好多版本,究竟该下载哪个呢?

第一个 MySQL Community Server,这个不要钱!
第二个 MySQL Enterprise 这个要掏钱,不过可以打电话咨询问题,也就是电话技术支持。(土豪想打oracle电话骚扰客服妹子随意)
第三个 MySQL Cluster,这个单独是没法用的,要在1或2的基础上用。当然用来平衡多台数据库的。
第四个 MySQL Workbench,这是个好东西,用来设计数据库的。erwin知道吗?他就是这个作用。(本人也在用这个,只是在mac经常莫名其妙的退出,还未得到解决)

好的,瞄准目标,MySQL Community Server,开始下载。

#wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz

这可能需要点时间,让我们先来看看其他内容吧,下载下来之后就是解压,进入目录

#tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz

#cd mysql-5.6.35-linux-glibc2.5-x86_64

创建MySql用户和组

创建 /usr/local/mysql/data 目录

#mkdir /usr/local/mysql

新增MySql用户组

#groupadd mysql

新增mysql用户并设置不可用此账户登录终端

#useradd -r -g mysql mysql -s /sbin/nologin

新增mysql用户和组对mysql根目录的读权限

#chown -R mysql.mysql /usr/local/mysql/

安装MySql

转移MySql文件到/usr/local/mysql中,到达指定目录,安装

#mv ./* /usr/local/mysql/

#cd /usr/local/mysql

#scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

perl组件没有安装,报错,这时,我们需要安装下perl组件

#yum install -y perl-Module-Install.noarch

再次安装,安装完成。

配置MySql

复制配置文件到 /etc/my.cnf,替换原有的文件

#cp -a ./support-files/my-default.cnf /etc/my.cnf

将mysql的服务脚本放到系统服务中

#cp -a ./support-files/mysql.server /etc/init.d/mysqld

配置防火墙

防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口

打开/etc/sysconfig/iptables

#vim /etc/sysconfig/iptables

在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:

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

然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:

#service iptables restart

OK,一切配置完毕,你可以访问你的MySQL了~

启动MySql服务

#service mysqld start

看到success!表明启动mysql成功。可以ps aux | grep mysql查看。

进入操作页面,现在使用无密码登录,密码设置下面讲到。

#/usr/local/mysql/bin/mysql -uroot

进入后可以尽情的玩耍啦!

密码设置

MySQL启动成功后,root默认没有密码,我们需要设置root密码。

设置之前,我们需要先设置PATH,要不不能直接调用mysql

修改/etc/profile文件,在文件末尾添加

PATH=/usr/local/mysql/bin:$PATH

export PATH

关闭文件,运行下面的命令,让配置立即生效

#source /etc/profile

现在,我们可以在终端内直接输入mysql进入,mysql的环境了

执行下面的命令修改root密码

#mysql -uroot

mysql> SET PASSWORD = PASSWORD('123456');

若要设置root用户可以远程访问,执行

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.16.%' IDENTIFIED BY 'password' WITH GRANT OPTION;

password为远程访问时,root用户的密码,可以和本地不同。

现在,你就可以使用密码123456本地密码登录mysql服务器,使用password远程密码登录远程服务器啦,赶紧试试吧。

好了,今天关于mysql的讲解就到此为止,大家有什么不明白的欢迎在评论区评论,一起探讨交流!

重启服务器之后存在两个问题

1、没有自动启动mysqld服务

#chkconfig --add mysqld

然后用这个命令设置开机启动:

#chkconfig mysqld on

最后chkconfig --list确认一下是否设置成功

2、远程不能再次链接mysql了

查看防火墙状态,可能是因为防火墙的原因,导致mysql服务端口3306被阻止了。

原文地址:https://www.cnblogs.com/riverdubu/p/6429246.html