`

set up mysql on centos/linux

阅读更多
Refer to:
http://smilemonkey.iteye.com/blog/673848
http://heimuad.iteye.com/blog/129932
http://www.cnblogs.com/smalldirector/archive/2011/12/27/2303648.html # port

set up mysql 5.5 using by make
http://icooke.blog.51cto.com/4123148/764796

http://www.j927.net/lamp/centos-6-3-minimal%E7%BC%96%E8%AF%91%E5%AE%89%E8%A3%85mysql-5-5-27.html


.src.rpm文件解压缩及MySql的安装

http://dev.mysql.com/downloads/mysql/5.6.html#downloads 下载5.6版本
安装参照如下:

1、用rpm解压

[root@169 Desktop]# rpm -ivh MySQL-5.5.8-1.linux2.6.src.rpm




2、第1步完成后,在/usr/src/redhat目录下,生成了两个新目录。

[root@169 redhat]# pwd
/usr/src/redhat
[root@169 redhat]# ls -rlt
drwxr-xr-x 2 root root 4096 Jan 15 07:20 SPECS
drwxr-xr-x 2 root root 4096 Jan 15 07:20 SOURCES
[root@169 redhat]#



3、进入SOURCES目录。

[root@169 redhat]# cd SOURCES/
[root@169 SOURCES]# ls -lrt
-rw-r--r-- 1 root root 24258297 Dec 3 13:32 mysql-5.5.8.tar.gz
[root@169 SOURCES]# tar zxvf ./mysql-5.5.8.tar.gz




4、安装

1)、CMAKE的下载和安装【CMAKE是一个跨平台的编译工具,C代表 CROSS-PLATFORM】:

http://www.cmake.org/cmake/resources/software.html

[root@169 Desktop]# tar zxvf cmake-2.8.3.tar.gz
[root@169 Desktop]# cd cmake-2.8.3
[root@169 cmake-2.8.3]# ./configure

[root@169 cmake-2.8.3]# make

[root@169 cmake-2.8.3]# make install


2)、mysql的安装
[root@169 SOURCES]# cd mysql-5.5.8
[root@169 mysql-5.5.8]# cmake .

此时,就生成了 Makefile文件,这就好办了。这里我们看到,cmake的作用就是为了生成Makefile文件。

[root@169 mysql-5.5.8]# make
[root@169 mysql-5.5.8]# make install
缺省就安装在 /usr/local/mysql目录下。




  系统:centos 5.5
  需要的软件包:mysql-5.5.22.tar.gz
1.安装前准备
1
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel \
2
freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel \
3
glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel cmake \
# yum install glibc
4
ncurses ncurses-devel curl curl-devel vim ntsysv make libtool
# yum install ncurses ncurses-devel
1
wget http://download.slogra.com/mysql/mysql-5.5.22.tar.gz
2
useradd -M -r -s /sbin/nologin mysql


2.安装配置第1个mysql
tar zxf mysql-5.5.22.tar.gz && cd mysql-5.5.22
01
cmake . \
02
  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql/ \
03
  -DMYSQL_DATADIR=/data0/mysql/3306/data \
04
  -DMYSQL_UNIX_ADDR=/data0/mysql/3306/mysqld.sock \
05
  -DWITH_MYISAM_STORAGE_ENGINE=1 \
06
  -DWITH_INNOBASE_STORAGE_ENGINE=1 \
07
  -DWITH_BLACKHOLE_STORAGE_ENGINE=0 \
08
  -DWITH_ARCHIVE_STORAGE_ENGINE=0 \
09
  -DWITHOUT_PARTITION_STORAGE_ENGINE=1 \
10
  -DENABLED_LOCAL_INFILE=1 \
11
  -DMYSQL_TCP_PORT=3306 \
12
  -DEXTRA_CHARSETS=all \
13
  -DDEFAULT_CHARSET=utf8 \
14
  -DDEFAULT_COLLATION=utf8_general_ci \
15
  -DWITH_DEBUG=0 \
16
  -DWITH_EMBEDDED_SERVER=1 \
17
  -DWITH_SSL=system \
18
  -DWITH_READLINE=1

这里的编译参数有几项你们可以根据自己的情况设置.我将第1个mysql运行在3306端口,安装目录是/usr/local/mysql,数据库存放位置是/data0/mysql/3306/data,mysql启动文件位置是/data0/mysql/3306/mysqld.sock.
然后执行编译和安装命令
make
make install
然后配置目录权限
chmod +w /usr/local/mysql
chown -R mysql.mysql /usr/local/mysql
这里要创建下mysql的数据库存放目录
mkdir -p /data0/mysql/3306/data/
mkdir -p /data0/mysql/3306/binlog/
mkdir -p /data0/mysql/3306/relaylog/
chown -R mysql.mysql /data0/mysql/
然后执行数据初始化
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/data0/mysql/3306/data --user=mysql

cp support-files/my-medium.cnf /usr/local/mysql/my.cnf

原来mysql默认的配置文件放在/etc/my.cnf,现在多个版本同时运行,需要每个版本都将配置文件单独放在自己的安装目录内.
cp support-files/mysql.server /etc/init.d/mysql06
原来mysql默认采用mysqld脚本,现在每个mysql需要有自己的启动脚本,并通过修改启动脚本来为每个mysql指定采用的配置文件.
chmod 755 /etc/init.d/mysql06
修改/etc/init.d/mysql06,用来指定采用的配置文件位置.
vi /etc/init.d/mysql06

找到conf=/etc/my.cnf

改成conf=/usr/local/mysql/my.cnf
service mysql06 start
chkconfig mysql06 on

好了,可以看到第1个mysql已经成功启动了,接下来我们来编译安装第2个mysql.

2.编译安装第2个mysql
第2个mysql的编译参数跟第1个只是有点不相同罢了.
先删除编译过的mysql包:
rm -fr mysql-5.5.22 && tar zxf mysql-5.5.22.tar.gz && cd mysql-5.5.22
01
cmake . \
02
  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql07/ \
03
  -DMYSQL_DATADIR=/data0/mysql/3307/data \
04
  -DMYSQL_UNIX_ADDR=/data0/mysql/3307/mysqld.sock \
05
  -DWITH_MYISAM_STORAGE_ENGINE=1 \
06
  -DWITH_INNOBASE_STORAGE_ENGINE=1 \
07
  -DWITH_BLACKHOLE_STORAGE_ENGINE=0 \
08
  -DWITH_ARCHIVE_STORAGE_ENGINE=0 \
09
  -DWITHOUT_PARTITION_STORAGE_ENGINE=1 \
10
  -DENABLED_LOCAL_INFILE=1 \
11
  -DMYSQL_TCP_PORT=3307 \
12
  -DEXTRA_CHARSETS=all \
13
  -DDEFAULT_CHARSET=utf8 \
14
  -DDEFAULT_COLLATION=utf8_general_ci \
15
  -DWITH_DEBUG=0 \
16
  -DWITH_EMBEDDED_SERVER=1 \
17
  -DWITH_SSL=system

这里就不再给大家说明了,自己看吧.
chmod +w /usr/local/mysql07
chown -R mysql.mysql /usr/local/mysql07
mkdir -p /data0/mysql/3307/data/
mkdir -p /data0/mysql/3307/binlog/
mkdir -p /data0/mysql/3307/relaylog/
chown -R mysql.mysql /data0/mysql/
/usr/local/mysql07/scripts/mysql_install_db --basedir=/usr/local/mysql07/ --datadir=/data0/mysql/3307/data --user=mysql
cp support-files/my-medium.cnf /usr/local/mysql07/my.cnf
cp support-files/mysql.server /etc/init.d/mysql07
chmod 755 /etc/init.d/mysql07
vi /etc/init.d/mysql07
找到conf=/etc/my.cnf
改成conf=/usr/local/mysql07/my.cnf
这里还要对my.cnf文件进行修改:
vi /usr/local/mysql07/my.cnf
01
[client]
02
port    = 3307
03
socket  = /data0/mysql/3307/mysql.sock
04
 
05
[mysqld]
06
port    = 3307
07
socket  = /data0/mysql/3307/mysql.sock
08
basedir = /usr/local/mysql07
09
datadir = /data0/mysql/3307/data
10
log-error = /data0/mysql/3307/mysql_error.log
11
pid-file = /data0/mysql/3307/mysql.pid
12
log-bin = /data0/mysql/3307/binlog/binlog
13
relay-log-index = /data0/mysql/3307/relaylog/relaylog
14
relay-log-info-file = /data0/mysql/3307/relaylog/relaylog
15
relay-log = /data0/mysql/3307/relaylog/relaylog

然后启动mysql07
service mysql07 start
chkconfig mysql07 on

好了,大家可以看到两个mysql都已经运行起来了.

mysql cluster:

http://www.cnblogs.com/bigshuai/archive/2012/02/29/2373865.html



yum install libaio.x86_64 libaio-devel.x86_64 perl
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics