标签:mysql5.5 多实例
多实例:也就是在一个服务器上开启多个端口,运行多个mysql服务进程,
这里的主要实现 方法是多个配置文件,多个启动程序 ,多个数据文件,
以下是安装过程
1.安装依赖,
yum install ncurses-devel -y
yum install libaio-devel -y
cmake 的解压
cd cmake-2.8.8
./configure
gmake(注意这里是gmake)
gmake install
tar xf mysql-5.5.32.tar.gz
cd mysql-5.5.32
groupadd mysql
useradd mysql -s /sbin/nologin -M -g mysql
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.32 \
-DMYSQL_DATADIR=/application/mysql-5.5.32/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.5.32/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \
-DENABLED_LOCAL_INFILE=ON \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FAST_MUTEXES=1 \
-DWITH_ZLIB=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_READLINE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DWITH_DEBUG=0
make && make install
ln -s /application/mysql-5.5.32/ /application/mysql
其实以上就是正常编译安装mysql的正常步骤,如果是多实例安装,下面步骤将不同,
创建目录
mkdir /data/{3306,3307}/data/ -p
至于这里的配置文件,我已经改好,在附件中
然后把相关配置文件复制到相关目录下
cp data/3306/* /data/3306
cp data/3307/* /data/3307
tree /data(查看文件树)
这里面有一个技术细节,就是关天mysql启动的问题,这里面启动是调用的脚 本启动,而这个脚 本是基本以下几个命令的。
mysql_safe --defaults-file=/data/3306/my.cnf>&1 /dev/null &
此命令是数据库的启动命令
mysqladmin -u root -p密码 -S /data/3306/msyql.sock shutdown
3.授权
chown-R mysql.mysql /data
起动文件加执行权限
find /data/ -type f -name "mysql" |xargs chmod +x
初始化
cd /application/mysql/scripts/
./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3306/data/ --user=mysql
./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3307/data/ --user=mysql
启动数据库了
/data/3306/mysql start
/data/3307/mysql start
数据库的登录
多实例 的登录一定要指定socket
mysql -S /data/3306/mysql.sock
mysql -S /data/3307/mysql.sock
数据库的重启
/data/3306/mysql stop
/data/3306/mysql start
为root 增加密码
mysqladmin -u root -S /data/3306/mysql.sock password ‘密码‘
因为已经加了密码,所以现在如果停止数据库,必须到启动脚本里更新一下密码,否则会报错
vim /data/3306/mysql
然后再做个授权
find /data -type f -name "mysql" -exec chmod 700 {} \;
find /data -type f -name "mysql" -exec chown root.root {} \;
find /data -type f -name "mysql" -exec ls -l {} \;
/data/3306/mysql start
标签:mysql5.5 多实例
原文地址:http://ahxiaoliu.blog.51cto.com/9724846/1690207