Bookmark and Share

Lee's 程序人生

HTML CSS Javascript XML AJAX ATLAS C# C++ 数据结构 软件工程 设计模式 asp.net Java 数字图象处理 Sql 数据库
  博客园  :: 首页  :: 新随笔  :: 联系 :: 管理

单台服务器多个MYSQL 安装

Posted on 2008-01-25 11:14  analyzer  阅读(707)  评论(1编辑  收藏  举报

单台服务器多个MYSQL 安装

作者:天随
很久没有写点东西了,在工作的这些日子,得到了一些安装Mysql的方法,此方法可以同时在一台linux服务上安装多个Mysql.

准备Mysql的源码,版本号为mysql-5.0.20a.tar.gz,当然其它的也行,只做为测试.linux用Red hat linux as 4.

安装步骤:

1.解压mysql-5.0.20a.tar.gz.

命令: tar -zxvf mysql-5.0.20a.tar.gz

2.配置 mysql

命令:./configure --prefix=/test/mysql --with-charset=gbk

说明:安装到/text/mysql下,语言用gbk.当然用别的也行,还有其它参数可以查看相关文档.

3.编译,安装

命令:

make

make install

这两个命令发的时间较长.

4.创建用户和组.

groupadd mysql

useradd -g mysql mysql

5.进入mysql目录.创建var目录.并把./share/mysql/my-medium.cnf 拷到mysql目录下并改名为my.cnf.

>mkdir var

>mv share/mysql/my-medium.cnf my.cnf

6.配置my.cnf

配置主要把安装的目录的那几项打开就行.

改动如下:

[client]
#password = your_password
port = 3306
socket = /tmp/mysql3306.sock

# The MySQL server
[mysqld]
port = 3306
socket = /tmp/mysql3306.sock

打开下面几项

innodb_data_home_dir = /test/mysql/var/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /test/mysql/var/
innodb_log_arch_dir = /test/mysql/var/

7.安装数据库

命令:./bin/mysql_install_db --defaults-file=/test/mysql/my.cnf --user=mysql

说明:必须用参数--defaults-file指定my.cnf,否则系统用默认的/etc/my.cnf.

8.安装完后,可以看到mysql/var目录下有数据文件,然后用下面命令设置权限:

shell> chown -R root .
shell> chown -R mysql var
shell> chgrp -R mysql .

9.启动数据库.

./bin/mysqld_safe --defaults-file=/test/mysql/my
.cnf --user=mysql &

10.进入数据库.

./bin/mysql -u root --socket=/tmp/mysql3306 --defaults-file=/test/mysql/my.cnf

默认时没有密码,当然如果你删除/etc/my.cnf,可以不要后面的--defaults-file=/test/mysql/my.cnf
./bin/mysql -u root --socket=/tmp/mysql3306 也就行了,原因大家应该知道吧!^_^!

11.设为服务并自启动.

对于设置为服务只要把mysql/share/mysql/mysql.server放到/etc/init.d/下改名为mysql

命令:

mv share/mysql/mysql.server /etc/init.d/mysql

chmod 775 /etc/init.d/mysql

chkconfig --add mysql

总结,这只是安装了一个3306端口的mysql,如果要在装一个msyql,步骤一样,只要改动my.cnf文件的内容.

[client]
#password = your_password
port = 3310
socket = /tmp/mysql3310.sock

# The MySQL server
[mysqld]
port = 3310
socket = /tmp/mysql3310.sock
我要啦免费统计