mysql 5.5.37安装_mysql-5.5.37多实例的安装

CentOS 6.2下安装编译mysql-5.5.37  ##多实例 原理也是先安装单实例后面安装多实例

首先yum安装

yum install gcc gcc-c++ cmake ncurses-devel bison

1 单实例Mysql数据库的安装

1.1 建立mysql账号

[root@192 ~]# groupadd mysql

[root@192 ~]# useradd -s /sbin/nologin -g mysql -M mysql   ##-M表示不创建家目录

创建完成之后查看下

[root@192 ~]# grep mysql /etc/passwd

mysql:x:500:500::/home/mysql:/sbin/nologin

1.2建立mysql的安装目录

[root@192 ~]# mkdir -p /usr/local/mysql

[root@192 ~]# mkdir -p /data/mysql/data

2;安装mysql

2,1检测系统原来是否有安装过mysql

[root@taoke1 ~]# rpm -qa |grep mysql

mysql-libs-5.1.61-1.el6_2.1.i686

这里是没有安装过mysql 如果有的话就需要先卸载mysql安装包rpm -e --nodeps mysql.X.X.X

2,2安装编译mysql编译所需要的包

yum -y install make gcc-c++ cmake bison-devel  ncurses-devel

如果前面安装过这些包的话可以分开查询下再安装

2,3解压mysql并安装

[root@taoke1 ~]# tar xzvf mysql-5.5.37.tar.gz

[root@taoke1 ~]# cd mysql-5.5.37

cmake \

-DMYSQL_USER=mysql \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DINSTALL_DATADIR=/data/mysql/data \

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DEXTRA_CHARSETS=all \

-DWITH_EMBEDDED_SERVER=1 \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \#套接字文件

[root@taoke1 mysql-5.6.23]# make && make install

3;初始化数据库

[root@xiangys02 mysql]# mkdir -p /data/mysql/data/{3306,3307}  ##建立两个实例

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql/data/3306 --user=mysql

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql/data/3307 --user=mysql

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql/data/mysql/data

4;创建配置文件

3306 my.cnf

[client]

port = 3306

socket = /data/mysql/data/3306/mysql.sock

[mysqld]

datadir=/data/mysql/data/3306

skip-name-resolve

lower_case_table_names=1

innodb_file_per_table=1

port = 3306

socket =/data/mysql/data/3306/mysql.sock

back_log = 50

max_connections = 300

max_connect_errors = 1000

table_open_cache = 2048

max_allowed_packet = 16M

binlog_cache_size = 2M

max_heap_table_size = 64M

sort_buffer_size = 2M

join_buffer_size = 2M

thread_cache_size = 64

thread_concurrency = 8

query_cache_size = 64M

query_cache_limit = 2M

ft_min_word_len = 4

default-storage-engine = innodb

thread_stack = 192K

transaction_isolation = REPEATABLE-READ

tmp_table_size = 64M

log-bin=mysql-bin

binlog_format=mixed

slow_query_log

long_query_time = 1

server-id = 1

key_buffer_size = 8M

read_buffer_size = 2M

read_rnd_buffer_size = 2M

bulk_insert_buffer_size = 64M

myisam_sort_buffer_size = 128M

myisam_max_sort_file_size = 10G

myisam_repair_threads = 1

myisam_recover

innodb_additional_mem_pool_size = 16M

innodb_buffer_pool_size = 200M

innodb_data_file_path = ibdata1:10M:autoextend

innodb_file_io_threads = 8

innodb_thread_concurrency = 16

innodb_flush_log_at_trx_commit = 1

innodb_log_buffer_size = 16M

innodb_log_file_size = 512M

innodb_log_files_in_group = 3

innodb_max_dirty_pages_pct = 60

innodb_lock_wait_timeout = 120

[mysqldump]

quick

max_allowed_packet = 256M

[mysql]

no-auto-rehash

prompt=\\u@\\d \\R:\\m>

[myisamchk]

key_buffer_size = 512M

sort_buffer_size = 512M

read_buffer = 8M

write_buffer = 8M

[mysqlhotcopy]

interactive-timeout

[mysqld_safe]

open-files-limit = 8192

3307 my.cnf

[client]

port = 3307

socket = /data/mysql/data/3307/mysql.sock

[mysqld]

datadir=/data/mysql/data/3307

skip-name-resolve

lower_case_table_names=1

innodb_file_per_table=1

port = 3307

socket =/data/mysql/data/3307/mysql.sock

back_log = 50

max_connections = 300

max_connect_errors = 1000

table_open_cache = 2048

max_allowed_packet = 16M

binlog_cache_size = 2M

max_heap_table_size = 64M

sort_buffer_size = 2M

join_buffer_size = 2M

thread_cache_size = 64

thread_concurrency = 8

query_cache_size = 64M

query_cache_limit = 2M

ft_min_word_len = 4

default-storage-engine = innodb

thread_stack = 192K

transaction_isolation = REPEATABLE-READ

tmp_table_size = 64M

log-bin=mysql-bin

binlog_format=mixed

slow_query_log

long_query_time = 1

server-id = 1

key_buffer_size = 8M

read_buffer_size = 2M

read_rnd_buffer_size = 2M

bulk_insert_buffer_size = 64M

myisam_sort_buffer_size = 128M

myisam_max_sort_file_size = 10G

myisam_repair_threads = 1

myisam_recover

innodb_additional_mem_pool_size = 16M

innodb_buffer_pool_size = 200M

innodb_data_file_path = ibdata1:10M:autoextend

innodb_file_io_threads = 8

innodb_thread_concurrency = 16

innodb_flush_log_at_trx_commit = 1

innodb_log_buffer_size = 16M

innodb_log_file_size = 512M

innodb_log_files_in_group = 3

innodb_max_dirty_pages_pct = 60

innodb_lock_wait_timeout = 120

[mysqldump]

quick

max_allowed_packet = 256M

[mysql]

no-auto-rehash

prompt=\\u@\\d \\R:\\m>

[myisamchk]

key_buffer_size = 512M

sort_buffer_size = 512M

read_buffer = 8M

write_buffer = 8M

[mysqlhotcopy]

interactive-timeout

[mysqld_safe]

open-files-limit = 8192

5;定义全局

[root@xiangys01 mysql-5.5.37]# echo "export PATH=/usr/local/mysql/bin/:$PATH" >>/etc/profile

[root@xiangys01 mysql-5.5.37]#source /etc/profile

6;启动mysql

多实例地区文件的启动mysql服务实质:

mysqld_safe --defaults-file=/data/mysql/data/3306/my.cnf 2>&1 > /dev/null &

mysqld_safe --defaults-file=/data/mysql/data/3307/my.cnf 2>&1 > /dev/null &

6;登陆

[root@xiangys01 3307]# /usr/local/mysql/bin/mysql -uroot -p -S /data/mysql/data/3306/mysql.sock

[root@xiangys01 3307]# /usr/local/mysql/bin/mysql -uroot -p -S /data/mysql/data/3307/mysql.sock

7;停止mysql

/usr/local/mysql/bin/mysqladmin -u root -p  -S /data/mysql/data/3306/mysql.sock shutdown

/usr/local/mysql/bin/mysqladmin -u root -p  -S /data/mysql/data/3307/mysql.sock shutdown

8;启动脚本编写

[root@xiangys01 3306]# vi mysqld

[root@xiangys01 3306]# chmod 700 mysqld

#!/bin/bash

mysql_port=3306

mysql_username="root"

#if passwd the set password

mysql_password="123"

function_start_mysql()

{

printf "Starting MySQL...\n"

}

function_stop_mysql()

{

printf "Stoping MySQL...\n"

/usr/local/mysql/bin/mysqladmin -u ${mysql_username} -p${mysql_password} -S /data/mysql/data/${mysql_port}/mysql.sock shutdown

}

function_restart_mysql()

{

printf "Restarting MySQL...\n"

function_stop_mysql

function_start_mysql

}

function_kill_mysql()

{

kill -9 $(ps -ef | grep 'bin/mysqld_safe' | grep ${mysql_port} | awk '{printf $2}')

kill -9 $(ps -ef | grep 'libexec/mysqld' | grep ${mysql_port} | awk '{printf $2}')

}

case $1 in

start)

function_start_mysql;;

stop)

function_stop_mysql;;

kill)

function_kill_mysql;;

restart)

function_stop_mysql

function_start_mysql;;

*)

echo "Usage: /data/mysql/data/${mysql_port}/mysqld {start|stop|restart|kill}";;

esac

#编写3307脚本

#!/bin/bash

mysql_port=3307

mysql_username="root"

mysql_password="123"

function_start_mysql()

{

printf "Starting MySQL...\n"

}

function_stop_mysql()

{

printf "Stoping MySQL...\n"

}

function_restart_mysql()

{

printf "Restarting MySQL...\n"

function_stop_mysql

function_start_mysql

}

function_kill_mysql()

{

kill -9 $(ps -ef | grep 'bin/mysqld_safe' | grep ${mysql_port} | awk '{printf $2}')

kill -9 $(ps -ef | grep 'libexec/mysqld' | grep ${mysql_port} | awk '{printf $2}')

}

case $1 in

start)

function_start_mysql;;

stop)

function_stop_mysql;;

kill)

function_kill_mysql;;

restart)

function_stop_mysql

function_start_mysql;;

*)

echo "Usage: /data/mysql/data/${mysql_port}/mysqld {start|stop|restart|kill}";;

esac

启动方式:

/data/mysql/data/3306/mysqld start

/data/mysql/data/3307/mysqld start

[root@xiangys01 3307]# /data/mysql/data/3306/mysqld restart

Stoping MySQL...

Starting MySQL...

[root@xiangys01 3307]# /data/mysql/data/3307/mysqld restart

Stoping MySQL...

Starting MySQL...

9;开机自启动mysql

[root@xiangys01 3307]# vi /etc/rc.local

/data/mysql/data/3306/mysqld start >/dev/null 2>&1

/data/mysql/data/3307/mysqld start >/dev/null 2>&1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值