【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/
与其他大型数据库例如 Oracle、DB2、SQL 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被阻止了。
【CNMP系列】CentOS7.0下安装MySql5.6服务的更多相关文章
- 【CNMP系列】CentOS7.0下安装PHP5.6.30服务
上一节我们讲过了如何在CentOS7.0下安装MySql服务,如果没有看到欢迎页面的朋友,可以加我的个人微信详聊:litao514148204 附上一节地址:http://www.cnblogs.co ...
- 【Linux】CentOS7.0下安装JDK环境
写在前面:此次试验是在CentOS7上面安装的,亲测成功. 所需工具:JDK1.8安装包,xftp 具体步骤: 1,首先使用xftp连接到自己的虚拟机,然后查看是否有"/usr/java/j ...
- 【Tomcat】CentOS7.0下安装多个Tomcat及其配置
安装前所需环境 在开始安装Tomcat之前,需要安装环境JDK,并配置JAVA环境.如果不知道如何配置,可参考这篇博客:[Linux]CentOS7.0下安装JDK环境 Tomcat安装 Tomcat ...
- CentOS7.0下安装FTP服务的方法
http://www.jb51.net/article/106604.htm 本篇文章主要介绍了CentOS7.0下安装FTP服务的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟 ...
- 【CNMP系列】CentOS7.0下安装Nginx服务
话步前言,CNMP之路,系统起步:http://www.cnblogs.com/riverdubu/p/6425028.html 这回我来讲解下CentOS7.0下如何安装和配置Nginx服务 Ngi ...
- centos7.0 下安装jdk1.8
centos7.0这里安装jdk1.8采用yum安装方式,非常简单. 1.查看yum库中jdk的版本 [root@localhost ~]# yum search java|grep jdk 2.选择 ...
- 【CNMP系列】CentOS7.0下安装FTP服务
一个小插曲,安装一个FTP服务,便于和远程服务器的文件沟通.后续我们会讲到如何使用Capistrano配合git完成服务器的代码部署以及发布流程.现在,代码先走FTP吧,挺稳. FTP简介 FTP 是 ...
- 【Nginx】Nginx简介及在CentOS7.0下安装教程
是什么 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.其特点是占有内存少,并发能力强,事实上nginx的并发能 ...
- 【转载】CentOS7.0下安装Telnet
1..先检查CentOS7.0是否已经安装以下两个安装包:telnet-server.xinetd.命令如下: # rpm -qa telnet-server # rpm -qa xinetd 如果没 ...
随机推荐
- 安卓弹出对话框——Alertdialog(一)
首先看各种样式的对话框: 我们看到,Dialog有很多的子类实现,所以我们要定义一个对话框,使用其子类来实例化一个即可,而不要直接使用Dialog这个父类来构造. 二.AlertDialog 今天我们 ...
- iOS 之 手势
手势操作,有一个总的抽象类UIGestureRecognizer,用于检测设备的所有手势.其下有多个子类: 拍击UITapGestureRecognizer (任意次数的拍击) 向里或向外捏UIPin ...
- android TextView实现滚动显示效果
在android中,如果设置了TextView控件为单行显示,且显示的文本太长的话,默认情况下会造成显示不全的情况,这种情况下我们需要设置该控件属性如下: <TextView android:i ...
- spark transform操作卡死,请先对rdd进行action操作
这两天一直在写spark程序,遇到了一个奇怪的问题. 问题简单描述如下,有两个RDD,设为rdd_a,rdd_b,当将这两个rdd合并的时候,spark会在运行中卡死. 解决方式也是奇葩. 只要在合并 ...
- var d = document.getElementById 错误
var d = document.getElementById; var s = d("demo").innerHTML; alert(s); // IE 没有问题,其他浏览器必须 ...
- sql相关语言
SQL 掌握一门编程语言: C C++ Java C# ... 数据库 数据结构/算法 链表 队列 栈 数组 面向对象 网络 (界面.业务逻辑) 关系型数据库: 以二维表的形式组织数据 表.索引.视图 ...
- Angular - - ngList、ngRepeat、ngModelOptions
ngList 在文本输入的分隔的字符串和字符串数组间做转换,可以是一个固定的字符串分隔符(默认逗号)或正则表达式. 格式:ng-list=”value” value:表达式 通过这个值分隔字符串. ...
- iOS 之 CALayer与UIView的区别
最大区别:CALayer (图层)不会直接渲染到屏幕上. UIView是iOS系统中界面元素的基础,所有的界面元素都继承自它.它本身完全是由CoreAnimation来实现的. 真正的绘图部分,是由一 ...
- MariaDB10自动化安装部署
去MariaDB官网下载MariaDB本文用的是MariaDB 10.1.16 https://downloads.mariadb.org 选择二进制版本,下载到/root目录下 mariadb-10 ...
- Coding 代码管理快速入门
当项目创建好了之后,我们该如何上传代码到 coding 上呢?Coding 网站使用“ Git 仓库”(类似 github )来管理代码.其操作原理在于:利用 git 服务,将本地的项目目录下的文件同 ...