[置顶] 如何在CentOS6.5上安装MySQL5.6.*数据库(精讲)

时间:2022-09-29 10:27:14

本博客以安装mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz为例

使用winscp工具将安装包放入CenOS系统中,

使用root管理员登录,如果当前不是root管理员,使用su root命令切换

解压安装包,使用下面的命令解压

[root@test tools]# tar -zxvf mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz

将该解压后的文件移动到本地软件安装目录  

 [root@test tools]# mv mysql-5.6.25-linux-glibc2.5-x86_64 /usr/local/mysql

添加mysql用户组和mysql用户
[root@test ~]# groupadd mysql
[root@test ~]# useradd -r -g mysql mysql
检查用户是否已经存在
 [root@test ~]# groups mysql

若显示mysql : mysql表示在mysql组下已经有mysql用户;若显示groups: mysql: No such user,表示该用户还不存在

将/usr/local/mysql目录下归属到mysql用户及mysql组
 [root@test ~]# chown -R mysql:mysql /usr/local/mysql


下面是mysql的安装步骤了,前面的只是准备工作

回到根目录

 [root@test ~]# cd /

启动安装

 [root@test ~]# ./usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

进入mysql配置文件目录
[root@test ~]# cd /usr/local/mysql/support-files


[root@test support-files]# cp my-default.cnf /etc/my.cnf
复制mysql服务启动配置文件到/etc/下并重命名为my.cnf,/etc/my.cnf如存在则输入y和回车覆盖
配置文件,如果没有的话,mysql所有的参数将会是默认值


[root@test support-files]# cp mysql.server /etc/init.d/mysql
将mysql加入到可控制启动的服务的文件夹内,并命名mysql,即service可控制的服务名,至此可用service mysql start控制启动mysql
/etc/init.d 是/etc/rc.d/init.d的链接,在/etc/init.d添加一个文件会同步在/etc/rc.d/init.d下添加一个相同文件


[root@test ~]# vim /etc/init.d/mysql
进入后按键盘i进行编辑,修改如下俩值
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
保存提出


[root@test ~]# chkconfig --add mysql
让mysql服务加入到开机启动指令管理的服务列表中

[root@test ~]# chkconfig mysql on
开机自启动mysql服务


[root@test ~]# vi /etc/profile
配置环境变量,这个文件是每个用户登录时都会运行的环境变量设置
在最下面添加下面两个值
export MYSQL_HOME="/usr/local/mysql"
export PATH="$PATH:$MYSQL_HOME/bin"

保存并退出


让修改的profile文件立即生效
[root@test ~]# . /etc/profile


启用mysql

[root@test ~]# service mysql start

或者

[root@test ~]# systemctl start mysql


此时mysql已经安装成功了,接下来是要配置数据库密码,防火墙例外


设置mysql的root用户密码,此处设成123456,此root用户与linux不是一个

[root@test ~]# cd /usr/local/mysql/bin/
[root@test ~]# ./mysqladmin -u root password '123456'


用刚刚设置的mysql的root用户密码登陆mysql

[root@test ~]# mysql -u root -p


登录mysql以后,要允许使用用户名root密码123456从任何主机连接到mysql服务器
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

刷新权限

mysql>FLUSH PRIVILEGES;



退出mysql
mysql>exit;


到现在已经完成了  本地可以登陆,但是其他的主机不能远程连接,因为有防火墙,把防火墙关了是不现实的,所以需要添加防火墙例外,添加防火墙例外也很简单,只需要以下四步:


第1步:使用Xshell登录到centos系统,使用root用户登录
输入一下命令"/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT"
自己想开放什么端口,就直接在命令里写上什么端口,一般web网站默认为80端口,tomcat为8080,mysql数据库为3306,具体这些端口号都是可以在自己的软件中修改的。

第2步:使用"/etc/init.d/iptables startus"命令可查看刚刚添加到防火墙例外的端口信息。

第3步:这时不算已经完成,必须再执行一个"/etc/rc.d/init.d/iptables save"命令并确定。

第4步:执行"service iptables restart"命令并确定,当提示有四个OK时就说明防火墙启动完毕,这时在本文第1步所添加的例外端口号将全部都生效。


好了  全部完成


值得要说的是,很多的Linux系统会自带mysql的各个插件,所以在安装之前 ,一定要先卸载干净mysql,然后在 安装。

卸载步骤将会在另一篇介绍。