首页 > 技术文章 > centos7安装MySQL

nanqiang 2017-11-23 19:09 原文

1.安装环境centos7:

查看命令:cat /etc/redhat-release

2官网下载安装包:

地址:https://dev.mysql.com/downloads/mysql/5.6.html#downloads

如下图所示,选择系统版本。建议下载第一个包即可,第一个包含了各种包。也可按需下载

 

 

3下载后的包在服务器解压后有7个包:

解压命令:tar   -xvf    + 包名

 

4 卸载MariaDB(不存在则不用)

查看当前安装的mariadb包: rpm -qa | grep mariadb

 卸载命令: rpm -e --nodeps   + 包名

如果存在MariaDB的情况下直接安装rpm包会得到错误提示。因为CentOS的默认数据库已经不再是MySQL了,而是MariaDB,为什么呢?

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

 

5. 安装MYSQL

安装命令: rpm –ivh  + ( rpm包名)

 

按照顺序依次安装client,devel,server三个包即可

安装之后查看: 如下图:

 

 

 

 

6. 启动MYSQL

启动命令:service mysql start

查看状态:service mysql status

 

 

7. 启动错误处理(待求证)

注:我在启动时没有遇到错误。错误情况为网上他人的记录,记录下来(情况是否正确待求证)

启动MYSQL

[root@linuxidc 桌面]#service mysql start

得到错误:ERROR!The server quit without updating PID file

我们这里主要是因为:selinux惹的祸,如果是centos系统,默认会开启selinux。解决方法是关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器。

然后再启动mysql就没问题了:

[root@linuxidc 桌面]#service mysql start

查看MySQL运行状态:

[root@linuxidc 桌面]# service mysql status

SUCCESS! MySQL running (2377)

关闭了还是不能操作,可以这样操作

[root@localhost ~]# service mysql start

Starting MySQL.. ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).

[root@localhost ~]# cd /var/lib/mysql

[root@localhost mysql]#  less localhost.localdomain.err

[root@localhost mysql]# yum -y install autoconf

[root@localhost mysql]# /usr/bin/mysql_install_db --user=mysql

 

 

8.连接数据库

有些版本初次安装mysql,root账户没有密码。可直接登录

 

但是我装的这个有默认生成密码

查看默认生成密码:cat /root/.mysql_secret

 

 

 

登录:mysql  -u  root  -p密码

 

 

更改密码

set password for 'root'@'localhost' =password('password');

 

 

 

权限问题

想让局域网中的所有机器都能连接MySQL数据库,首先要给MySQL开启远程连接的功能,在MySQL服务器控制台上执行MySQL命令:

grant all privileges on *.* to root@"%" identified by 'abc' with grant option;  
flush privileges;

 

其中上面两行代码的意思是给从任意ip地址连接的用户名为root,密码为abc的用户赋予所有的权限。其中的"%"为任意的ip地址,如果想设为特定的值也可以设定为特定的值(以通配符%的内容增加主机/IP地址,也可以直接增加IP地址)。

做完这些之后,局域网内的mysql服务器可以访问了。

参考博客

https://www.cnblogs.com/starof/p/4680083.html

 

推荐阅读