MySQL 5.6在CentOS上的安装与配置
MySQL是一个广泛使用的关系型数据库管理系统,由瑞典的MySQL AB公司开发,现属于Oracle旗下产品,它以其高性能、高可靠性和易用性而著称,成为Web应用中最受欢迎的关系型数据库之一,本文将详细介绍如何在CentOS 7上安装和配置MySQL 5.6。
准备工作
1、查看系统是否已安装MySQL或MariaDB:
在安装MySQL之前,需要检查系统中是否已经安装了MySQL或者其替代品MariaDB。
使用命令rpm qa | grep mysql
来检查是否已安装MySQL。
使用命令rpm qa | grep mariadb
来检查是否已安装MariaDB,如果存在,则需卸载。
2、下载MySQL安装包:
访问MySQL官网(HTTPS://dev.mysql.com/downloads/mysql/)下载MySQL 5.6的Linux通用版安装包。
选择适合的版本和操作系统,例如mysql5.6.49linuxglibc2.12x86_64.tar.gz
。
3、解压并移动安装包:
将下载的安装包上传到服务器的某个目录,例如/opt/soft/
。
使用命令tar zxvf mysql5.6.49linuxglibc2.12x86_64.tar.gz
进行解压。
将解压后的文件夹重命名为mysql
并移动到/usr/local
目录下。
创建用户和组
1、创建MySQL用户组:
执行命令groupadd mysql
来创建一个名为mysql的用户组。
2、创建MySQL用户并将其加入mysql组:
执行命令useradd r g mysql s /bin/false mysql
来创建一个名为mysql的用户,并将其加入mysql组,注意这里的s /bin/false
表示该用户不能登录系统。
3、授权目录及文件:
进入/usr/local/mysql
目录,执行命令chown R mysql:mysql ./
将当前目录及其下的所有文件和子目录的拥有者改为mysql用户和组。
配置文件设置
1、复制并编辑my.cnf:
如果/etc/my.cnf
文件不存在,可以从/usr/local/mysql/supportfiles/mydefault.cnf
复制一份。
使用命令vim /etc/my.cnf
编辑配置文件,根据需求修改相关参数,例如端口号、数据存储路径等,以下是一个示例配置:
[mysqld] port = 3306 basedir = /usr/local/mysql datadir = /usr/local/mysql/data socket = /tmp/mysql.sock user = mysql max_connections = 200 charactersetserver = utf8 defaultstorageengine = INNODB skipnameresolve
2、初始化数据库:
进入/usr/local/mysql
目录,执行命令./scripts/mysql_install_db user=mysql basedir=/usr/local/mysql datadir=/usr/local/mysql/data
进行数据库初始化,如果在执行过程中提示缺少Perl模块,可以使用命令yum install autoconf
来安装所需的模块。
启动服务与配置环境变量
1、启动MySQL服务:
使用命令service mysqld start
来启动MySQL服务,然后使用命令service mysqld status
检查服务状态。
2、配置开机启动:
使用命令chkconfig add mysqld
将MySQL服务添加到系统服务列表中。
使用命令chkconfig mysqld on
设置MySQL服务随系统启动而自动启动。
3、配置环境变量:
编辑/etc/profile
文件,在文件末尾添加以下内容:
export PATH=$PATH:/usr/local/mysql/bin
执行命令source /etc/profile
使更改生效。
远程访问与安全设置
1、修改root密码:
使用命令mysql uroot p
登录MySQL,初始密码为空,直接回车即可登录。
登录成功后,执行命令ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
来修改root用户的密码,请将“新密码”替换为实际的密码。
2、开启远程访问:
使用命令mysql uroot p
登录MySQL。
执行命令GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
来允许root用户从任何主机远程访问MySQL,请将“密码”替换为实际的密码。
执行命令FLUSH PRIVILEGES;
使更改生效。
3、删除匿名用户和测试数据库:
执行命令DROP USER ''@'localhost';
删除匿名用户。
执行命令DROP DATABASE test;
删除test数据库。
常见问题解答(FAQs)
1、Q1: 在安装过程中遇到“FATAL ERROR: please install the following Perl modules before executing”错误怎么办?
A1: 这个错误通常是由于缺少必要的Perl模块导致的,在这种情况下,可以运行命令yum install autoconf
来安装所需的模块,然后再重新执行初始化命令。
2、Q2: 如何检查MySQL服务是否已经成功启动?
A2: 你可以使用命令service mysqld status
来检查MySQL服务的状态,如果服务正在运行,你应该会看到类似于“active (running)”的消息,你还可以使用命令ps aux | grep mysqld
来查看MySQL进程是否在运行。