centos7安装mysql
2015-12-15 23:14
615 查看
centos7上默认的数据库是mariaDB,而不是熟悉的Mysql,即使使用yum install mysql来安装,最后装上的仍是MariaDB。所以只好自己手动安装,方式是rpm包。
以下是详细步骤:
1、卸载可能已经安装的MariaDB
#rpm -qa | grep -i maria
mariadb-server.x86_64 //若这里没有任何显示,则表示没有安装
#rpm -e mariadb-server.x86_64
2、从官网下载相应的rpm包,至少包含以下三个:
mysql-community-server-5.7.9-1.el7.i686.rpm
mysql-community-devel-5.7.9-1.el7.x86_64.rpm
mysql-community-client-5.7.9-1.el7.x86_64.rpm
顺序一般为:devel server client
3、安装完之后,要先初始化mysql才能启动。
rpm方式安装的mysql,家目录位于/usr/share/mysql(我是通过“rpm -ql 包名”查找的)。最关键的一步:初始化。如果不经过初始化而直接启动mysql服务器,会报如下错误:
Starting MySQL. ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.pid).
怎么初始化呢?
sudo /usr/bin/mysql_install_db --user=mysql
这是最低配置了,--datadir这个选项可以不加,因为它会选择默认的/var/lib/mysql作为datadir。
在这之后就可以启动mysql服务了,而上个命令的输出最后面会给出提示):
You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &
在这之后,你再输入service mysql start,终端就会显示:
Starting MySQL SUCCESS!
4、然后我们该启动客户端验证一下,在终端直接输入mysql匿名登录,结果报如下错误:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)
错误代码是13,一般代表权限问题,我使用sudo mysql就能正常登陆。我们看一下该文件所在目录:
$ ll /var/lib/ | grep mysql
drwx------. 5 mysql mysql 4096 12月 15 22:59 mysql
显然,mysql文件夹的所有者是用户mysql,且组内成员和其他人都不允许访问该文件夹,所以才有上面的报错,解决办法就是放开权限,也不要放开太多,毕竟会有风险,只要能让这个文件夹可访问就行了:
sudo chmod o+x mysql/
然后再直接输入mysql就能正常访问了。oh yeah~
5、还没完,因为正常流程(对比Ubuntu使用apt-get安装方式)应该还有一步设定root用户密码,因为你不能老是匿名登录。方法就是:
sudo /usr/bin/mysqladmin -u root password 'new-password'
好了,剩下的就可以用mysql自己的命令解决了,大功告成!
以下是详细步骤:
1、卸载可能已经安装的MariaDB
#rpm -qa | grep -i maria
mariadb-server.x86_64 //若这里没有任何显示,则表示没有安装
#rpm -e mariadb-server.x86_64
2、从官网下载相应的rpm包,至少包含以下三个:
mysql-community-server-5.7.9-1.el7.i686.rpm
mysql-community-devel-5.7.9-1.el7.x86_64.rpm
mysql-community-client-5.7.9-1.el7.x86_64.rpm
顺序一般为:devel server client
3、安装完之后,要先初始化mysql才能启动。
rpm方式安装的mysql,家目录位于/usr/share/mysql(我是通过“rpm -ql 包名”查找的)。最关键的一步:初始化。如果不经过初始化而直接启动mysql服务器,会报如下错误:
Starting MySQL. ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.pid).
怎么初始化呢?
sudo /usr/bin/mysql_install_db --user=mysql
这是最低配置了,--datadir这个选项可以不加,因为它会选择默认的/var/lib/mysql作为datadir。
在这之后就可以启动mysql服务了,而上个命令的输出最后面会给出提示):
You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &
在这之后,你再输入service mysql start,终端就会显示:
Starting MySQL SUCCESS!
4、然后我们该启动客户端验证一下,在终端直接输入mysql匿名登录,结果报如下错误:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)
错误代码是13,一般代表权限问题,我使用sudo mysql就能正常登陆。我们看一下该文件所在目录:
$ ll /var/lib/ | grep mysql
drwx------. 5 mysql mysql 4096 12月 15 22:59 mysql
显然,mysql文件夹的所有者是用户mysql,且组内成员和其他人都不允许访问该文件夹,所以才有上面的报错,解决办法就是放开权限,也不要放开太多,毕竟会有风险,只要能让这个文件夹可访问就行了:
sudo chmod o+x mysql/
然后再直接输入mysql就能正常访问了。oh yeah~
5、还没完,因为正常流程(对比Ubuntu使用apt-get安装方式)应该还有一步设定root用户密码,因为你不能老是匿名登录。方法就是:
sudo /usr/bin/mysqladmin -u root password 'new-password'
好了,剩下的就可以用mysql自己的命令解决了,大功告成!
相关文章推荐
- linux suspend的基本流程,最简单的流程分析
- Linux中安装卸载Mysql
- 如何在centos上搞定tmate
- ubuntu上如何安装以tar.gz为后缀名的软件安装包,以install_flash_player_11_linux.i386.tar.gz为例
- Linux with HDMI video output on the ZED, ZC702 and ZC706 boards
- Linux laravel安装
- memset函数实现——string.h库函数
- Linux系统忘记密码
- CentOS7关闭yum自动下载更新
- Linux下安装Git
- Linux 递归经典:fork 炸弹
- linux 目录/sys 解析
- Linux 下的Makefile(二)
- linux基础篇
- Linux-Sublime Text install(How you I install Sublime Text 2/3?)
- linux中报错:undefined reference to
- 浅谈Linux内存管理机制
- Linux环境变量修复
- linux 安装 owncloud
- centos 6.5 eclipse 安装svn