本博客以安装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,然后在 安装。
卸载步骤将会在另一篇介绍。