登录  /  注册

详细介绍centos编译安装mysql5.6及安装多个mysql的示例代码分享

黄舟
发布: 2017-03-25 13:51:46
原创
847人浏览过

这篇文章主要介绍了centos编译安装mysql 5.6及安装多个mysql实例详解,需要的朋友可以参考下

--1.为mysql新建组和用户

# useradd -M -s /sbin/nologin mysql
登录后复制

--2.安装需要的库,编译器

# yum install ncurses-devel openssl-devel cmake -y
登录后复制

--3.解压

# tar zxvf mysql-5.6.35.tar.gz
# cd mysql-5.6.35
登录后复制

--4.编译安装

# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0 \
-DWITH_SSL=system
# make
# make install
登录后复制

--5.拷贝模版,作为配置文件

# cp support-files/my-default.cnf /etc/my.cnf
登录后复制

--6.设置mysql权限

# chown -R mysql.mysql /usr/local/mysql/
登录后复制

--7.初始化mysql数据库

# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
# chown -R root /usr/local/mysql/
# chown -R mysql /usr/local/mysql/data/
登录后复制

--8.设置mysql开机自启动

# cp support-files/mysql.server /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
# chkconfig mysqld on
登录后复制

--9.测试并运行mysql

#service mysqld start
登录后复制

--10.修改mysql管理员密码

#/usr/local/mysql/bin/mysqladmin -u root password '要设置的密码'
登录后复制

--11.使用用户登录mysql

# /usr/local/mysql/bin/mysql -u root -p
登录后复制

--12.加入环境变量

# echo 'PATH=/usr/local/mysql/bin/:$PATH' >>/etc/profile
# source /etc/profile
登录后复制

CentOS 6.5最小化编译安装mysql 5.5.35配置多实例

1、关闭防火墙

1234567 [root@mysql ~]# service iptables stop
iptables: Setting chains to policy ACCEPT: filter   [ OK ]
iptables: Flushing firewall rules:       [ OK ]
iptables: Unloading modules:        [ OK ]
[root@mysql ~]# chkconfig iptables off
[root@mysql ~]# chkconfig iptables --list
iptables  0:off 1:off 2:off 3:off 4:off 5:off 6:off
登录后复制

2、关闭selinux

12 [root@mysql ~]# setenforce 0
[root@mysql ~]# vim /etc/sysconfig/selinux
登录后复制

修改下面这一行;

SELINUX=disabled
12 [root@mysql ~]# getenforce 
Permissive
登录后复制

3、安装mysql依赖包及编译工具;

1234 [root@mysql ~]# yum install libaio-devel -y
[root@mysql ~]# yum install -y ncurses-devel
[root@mysql ~]# yum install -y gcc gcc-c++ 
[root@mysql ~]# yum install -y cmake
登录后复制

4、安装前准备;

4.1、安装路径:

1 [root@mysql ~]# mkdir /usr/local/mysql
登录后复制

4.2、数据库路径:

1 [root@mysql ~]# mkdir /data/mysql -p
登录后复制

4.3、创建用户和用户组

12 [root@mysql ~]# groupadd mysql
[root@mysql ~]# useradd -r -g mysql -s /bin/false mysql
登录后复制

4.4、赋予数据存放目录权限

1 [root@mysql ~]# chown mysql:mysql -R /data/mysql
登录后复制

5、编译安装mysql 5.5.35

1234567 [root@mysql ~]# yum install -y lrzsz
root@mysql ~]# mkdir /package
[root@mysql ~]# cd /package/
[root@mysql package]# tar xf mysql-5.5.32.tar.gz 
[root@mysql package]# cd mysql-5.5.32
[root@mysql mysql-5.5.32]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock 
-DDEFAULT_CHARSET=utf8 
-DDEFAULT_COLLATION=utf8_general_ci 
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk 
-DWITH_INNOBASE_STORAGE_ENGINE=1 
-DWITH_READLINE=1 
-DENABLED_LOCAL_INFILE=1 
-DMYSQL_DATADIR=/data/mysql/ 
-DMYSQL_USER=mysql 
-DMYSQL_TCP_PORT=3306
[root@mysql mysql-5.5.32]# make && make install
登录后复制

6、创建多实例数据库文件存放位置;

12345678 [root@mysql ~]# mkdir -p /data/{3306,3307}/data
[root@mysql ~]# tree /data
/data
|-- 3306
|  `-- data
`-- 3307
  `-- data
4 directories, 0 files
登录后复制

7、修改配置文件(my.cnf)如下行,分别放入3306、3307目录当中;

123456789 [root@mysql 3306]# vim my.cnf 
[client]
port      = 3306
socket     = /data/3306/mysql.sock
[mysqld]
port      = 3306
socket     = /data/3306/mysql.sock
datadir     = /data/3306
server-id    = 3306
登录后复制

8、初始化数据库;

注意:初始化数据库时需要指定不同的数据目录

123 [root@mysql mysql-5.5.32]# cd /usr/local/mysql/
[root@mysql mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3306
[root@mysql mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307
登录后复制

9、启动多实例,启动脚本可以加入到开机自启动文件中。

12 [root@mysql mysql]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/3306/my.cnf 2>&1 >/dev/null &  
[root@mysql mysql]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/3307/my.cnf 2>&1 >/dev/null &
登录后复制

9.1、查看端口;

12345678 [root@mysql mysql]# netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address        Foreign Address       State    PID/Program name  
tcp    0   0 0.0.0.0:3307        0.0.0.0:*          LISTEN   11621/mysqld    
tcp    0   0 0.0.0.0:22         0.0.0.0:*          LISTEN   1266/sshd      
tcp    0   0 0.0.0.0:3306        0.0.0.0:*          LISTEN   11338/mysqld    
tcp    0   0 :::22            :::*            LISTEN   1266/sshd      
udp    0   0 0.0.0.0:68         0.0.0.0:*                969/dhclient
登录后复制

10、登录多实例数据库

12 [root@mysql mysql]# /usr/local/mysql/bin/mysql -u root -p -P 3306 -S /data/3306/mysql.sock
[root@mysql mysql]# /usr/local/mysql/bin/mysql -u root -p -P 3307 -S /data/3307/mysql.sock
登录后复制

11、关闭mysql多实例方式

12 [root@mysql mysql]# /usr/local/mysql/bin/mysqladmin -u root -p -P 3306 -S /data/3306/mysql.sock shutdown  
[root@mysql mysql]# /usr/local/mysql/bin/mysqladmin -u root -p -P 3307 -S /data/3307/mysql.sock shutdown
cat /etc/my.cnf 
[mysqld1]
datadir=/data/mysql
socket=/tmp/mysql.sock
user=mysql
symbolic-links=0
skip-name-resolve
server-id=1221
max_connections = 2000
binlog-ignore-db=mysql
binlog-ignore-db=test
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
innodb_buffer_pool_size = 2G
innodb_additional_mem_pool=16M
innodb_log_file_size=256M
innodb_flush_log_at_trx_commit=2
character_set_server=utf8
collation_server = utf8_general_ci
replicate_ignore_db = mysql
slave-skip-errors=all
relay_log=/data/mysql/
[mysqld2]
port=3307
server-id=1222
log-error=/tmp/mysqld2.log
datadir=/data/mysql_live
socket=/tmp/mysql2.sock
user=mysql
symbolic-links=0
skip-name-resolve
character_set_server=utf8
collation_server = utf8_general_ci
max-connections=500
default-storage-engine=INNODB
innodb_file_per_table
log-bin=mysql-bin
relay-log-info-repository=TABLE
master-info-repository=TABLE
expire_logs_days=10
binlog_format=ROW
transaction-isolation=READ-COMMITTED
binlog-ignore-db=mysql
binlog-ignore-db=test
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
slow_query_log=TRUE
slow_query_log_file=/tmp/mysqld_slow_query2.log
long_query_time=3
replicate_ignore_db = mysql
slave-skip-errors=all
[mysqld3]
server-id=1223
port=3308
log-error=/tmp/mysqld3.log
datadir=/data/mysql
socket=/tmp/mysql3.sock
user=mysql
symbolic-links=0
skip-name-resolve
character_set_server=utf8
collation_server = utf8_general_ci
max-connections=500
default-storage-engine=INNODB
innodb_file_per_table
log-bin=mysql-bin
relay-log-info-repository=TABLE
master-info-repository=TABLE
expire_logs_days=10
binlog_format=ROW
transaction-isolation=READ-COMMITTED
binlog-ignore-db=mysql
binlog-ignore-db=test
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
slow_query_log=TRUE
slow_query_log_file=/tmp/mysqld_slow_query3.log
long_query_time=3
replicate_ignore_db = mysql
slave-skip-errors=all
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/data/mysql/mysqld.pid
登录后复制

以上就是详细介绍centos编译安装mysql5.6及安装多个mysql的示例代码分享的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号