本文档提供了一个在CentOS 6.3 64位系统上安装和配置多个MySQL实例的详细步骤。主要涉及的MySQL版本包括5.0.56和5.1.72,分别运行在端口3306和3307上,每个实例都有其独立的系统目录。
一、安装必要的开发包
在开始安装MySQL之前,首先需要确保系统安装了必需的开发工具包,包括wget、gcc-c++、ncurses、ncurses-devel、cmake、make、perl、bison、openssl、openssl-devel等。这些包对于编译和配置MySQL是必不可少的,可以通过yum命令进行安装。
二、关闭安全服务
为了简化MySQL的安装和避免防火墙或安全策略的干扰,需要暂时关闭iptables服务和SELINUX。执行`service iptables stop`以停止iptables,然后设置SELINUX为禁用状态,编辑/etc/sysconfig/selinux文件,将SELINUX的值改为"disabled"。
三、安装MySQL数据库实例
1. 下载MySQL的源码包,这里提供了5.0.56和5.1.72两个版本的下载链接。
2. 创建MySQL用户及所需目录结构,包括数据目录和日志目录,并将这些目录的所有权分配给新创建的mysql用户,确保其有适当的读写权限。
四、编译与安装MySQL
1. 解压缩下载的MySQL源码包。
2. 配置MySQL,指定安装路径、端口、数据目录等。例如,对于实例一,配置时需指定--prefix=/usr/local/mysql3306 --datadir=/usr/local/mysql3306/data --port=3306,对于实例二则相应地更改路径和端口。
3. 编译源码,使用`./configure`命令后,再运行`make && make install`进行安装。
4. 初始化MySQL数据库,运行如`scripts/mysql_install_db`的脚本,并根据不同的实例调整参数。
5. 复制配置文件并进行编辑,例如复制my.cnf到/etc/my.cnf,根据不同的实例更改服务器ID、端口、日志位置等配置。
6. 设置MySQL的启动脚本,添加系统启动服务,并设置权限。
7. 初始化权限表,使用`mysql_secure_installation`命令对MySQL进行安全设置,如删除匿名用户、禁止root远程登录等。
五、启动与管理MySQL实例
1. 使用`mysqld_safe --basedir=/usr/local/mysql3306 --pid-file=/usr/local/mysql3306/log/mysqld.pid --user=mysql &`启动第一个实例,类似地启动第二个实例。
2. 配置系统服务以在开机时自动启动MySQL,如`chkconfig mysqld on`。
3. 测试MySQL服务是否正常运行,通过`netstat -anpt | grep mysql`检查端口监听情况,或者通过`mysql -u root -p`登录数据库验证。
六、创建数据库
一旦MySQL实例成功启动,就可以使用SQL命令创建新的数据库,例如`CREATE DATABASE mydatabase;`,并为每个实例分配用户和权限。
总结:
在CentOS系统中安装多实例MySQL需要对系统环境、权限管理、配置文件和SQL语句有深入理解。通过这个过程,可以学习到如何管理数据库服务、优化系统配置以及确保数据的安全性。同时,了解多实例配置对于大型服务器环境中资源隔离和管理效率的提升有着重要意义。