码迷,mamicode.com
首页 > 数据库 > 详细

Linux下安装MySQL数据库

时间:2016-04-10 01:04:41      阅读:432      评论:0      收藏:0      [点我收藏+]

标签:

  MySQL目前最新版本是5.7.x,这里安装的MySQL版本是稳定的5.6.29版本,和5.7版本的版本安装过程不太一样,这里在CentOS 7.2系统上部署过程如下

  首先,打开下载链接:http://www.mysql.com/downloads/,页面最上面是企业版,一般个人或者企业使用社区版就足够了,页面拉到最下方可以看到下载入口:

  技术分享

  点击链接进入,然后选择第一项进入:

  技术分享

  这里默认是5.7.11的版本,我们选择5.6的下载链接进入:

  技术分享

  进入后,默认版本就是5.6.19,对于版本这里选择Linux - Generic,也就是通用的二进制版本

  技术分享

  然后上面都是RPM的包,我们拉到页面最下方根据操作系统位数选择.tar.gz的包,这里选择64位的mysql-5.6.29-linux-glibc2.5-x86_64.tar.gz

  技术分享

  点击Download下载到本地,然后上传到服务器准备安装

  接下来执行安装过程:

  释放归档文件: tar -xvzf mysql-5.6.29-linux-glibc2.5-x86_64.tar.gz  

  建立mysql目录并移动至安装目录:

mkdir /usr/local/mysql
mv mysql-5.6.29-linux-glibc2.5-x86_64 /usr/local/mysql/
cd /usr/local/mysql/mysql-5.6.29-linux-glibc2.5-x86_64/

  接下来创建mysql用户和用户组:

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

  修改当前目录权限为mysql权限:

chown -R mysql .
chgrp -R mysql .

  执行安装: ./scripts/mysql_install_db --user=mysql 

  如果上一步安装失败,提示FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:Data::Dumper的话,那么原因是缺少perl-module,那么执行命令: yum -y install perl-Module-Install.noarch 安装perl-module模块,需要下载安装98个包,这个要耐心等待一会,等待perl-module安装成功之后,再继续执行上一步安装

  等安装成功之后,将权限修改为合适的权限:

chown -R root .
chown -R mysql data

  然后建立mariadb的日志目录,否则下一步会报错,使用命令: mkdir /var/log/mariadb 

  然后执行mysql安全启动脚本: bin/mysqld_safe --user=mysql & 执行后,再按一下回车回到命令行,没报错则启动成功

  最后将mysql添加到系统服务: cp support-files/mysql.server /etc/init.d/mysql.server 

  这时候网上一些教程一般都说可以启动了,但是启动的时候会提示错误:Starting MySQL ERROR! Couldn‘t find MySQL server (/usr/local/mysql/bin/mysqld_safe),表示找不到mysqld_safe,这是因为没有将mysqld_safe链接到上面提示的目录,可以修改一下配置文件来指定位置,执行 vim /etc/my.cnf 打开配置mysql配置文件,如果意外丢失可以拷贝mysql安装目录下的my.cnf文件到/etc/下,根据错误提示是/mysqld_safe找不到,所以应该配置my.cnf中basedir的属性为mysql的安装目录,也就是这里的:/usr/local/mysql/mysql-5.6.29-linux-glibc2.5-x86_64

  技术分享

  配置完之后,保存并退出,然后执行 /etc/init.d/mysql.server start 可以正常启动mysql服务

  技术分享

  然后可以执行 bin/mysql 进入mysql交互界面,如果这里出现mysql.sock错误的提示,继续编辑/etc/my.cnf文件,修改其中的socket属性为:/tmp/mysql.sock即可,或者注释默认即可,保存并退出,再次进入mysql交互界面就可以了

  技术分享

  输入 quit 可以退出交互界面,mysql初始密码为空,可以使用mysqladmin为mysql服务器设置一个密码:

bin/mysqladmin -u root password 123456

 

  技术分享

  修改完成后通过执行命令: bin/mysql -uroot -p 回车后继续输入密码即可登录mysql

  如果后续需要修改密码,因为mysql数据库密码是存放在mysql的一个数据库中的user表中,那么可以通过SQL语句实现,首先登录mysql数据库在mysql提示符中进行如下操作即可修改密码:

mysql> USE mysql;
mysql> UPDATE user SET Password=PASSWORD(newpass) WHERE User = root;
mysql> FLUSH PRIVILEGES;

  通过以上3步即可修改为你想要的密码,并且下次立即生效,现在数据库在本地就可以正常使用了,

  后来可以把mysql添加至环境变量中,便于直接输入mysql进入,不用加路径了,这个是可选的,根据自己的需要即可

  现在还要注意一个问题,虽然通过命令行可以进入了,但是我们从其他主机编写的程序是无法连接到这台服务器的,在生产环境中这样肯定是不行的,所以我们要对所有主机开放授权,这样才可以正常访问,首先我们登录mysql,然后执行下面命令可以给所有主机开放root用户的授权:

mysql> GRANT ALL PRIVILEGES ON *.* TO root@% IDENTIFIED BY setpassword WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

 

  第一行指令的%代表所有主机来源,setpassword可以设置和本地mysql不同的密码,当然一般情况下相同即可,执行完上面的指令后mysql就可以从外网立即连接了,到这里mysql基本的安装配置就完成了

 

  

Linux下安装MySQL数据库

标签:

原文地址:http://www.cnblogs.com/freeweb/p/5370124.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!