文档章节

CentOS6.5安装MariaDB10.0.15编译安装和多实例管理配置

雁南飞丶
 雁南飞丶
发布于 2014/12/30 18:45
字数 938
阅读 1710
收藏 31

CentOS6.5 x86_64 系统

[root@e3 ~]# wget https://downloads.mariadb.org/interstitial/mariadb-10.0.15/source/mariadb-10.0.15.tar.gz/from/http%3A//mirrors.neusoft.edu.cn/mariadb
groupadd -r mysql
useradd -r -g mysql -s /sbin/nologin mysql
mkdir /data/mydata{1..3}
chown -R mysql:mysql  /data/*

安装

yum -y install gcc gcc-c++ make cmake ncurses ncurses libxml2 libxml2-devel openssl-devel bison bison-devel #依赖组件
解压MariaDB源码包
tar xf mariadb 
cd mariadb-10.0.15/
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mydata  -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STPRAGE_ENGINE=1 
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWIYH_READLINE=1 -DWIYH_SSL=system -DVITH_ZLIB=system -DWITH_LOBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock 
-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
make -j 4   -j 4 表示4核处理 能快点编译
make install

输出环境变量

[root@e3 ~]# vim /etc/profile.d/mysql.sh
export PATH=$PATH:/usr/local/mysql/bin/
[root@e3 mariadb-10.0.15]# . /etc/profile.d/mysql.sh

输出头文件库文件man帮助文档

 vim /etc/ld.so.conf.d/mysql.conf
/usr/local/mysql/lib
[root@e3 mariadb-10.0.15]# vim /etc/man.config
MANPATH /usr/local/mysql/man
[root@e3 mariadb-10.0.15]# man -M  /usr/local/mysql/man/ mysqld
[root@e3 tmp]# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/data/mydata1 --user=mysql

提供配置文件和启动脚本

[root@e3 mariadb-10.0.15]# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
[root@e3 mariadb-10.0.15]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@e3 mariadb-10.0.15]# chmod +x /etc/init.d/mysqld ^C
[root@e3 mariadb-10.0.15]# chkconfig mysqld on^C
[root@e3 mariadb-10.0.15]# /etc/init.d/mysqld start
然后测试
直接输入mysql

多实例配置运行于不同的端口3306,3307,3308

初始化mysql多实例

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

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

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

配置文件如/etc/my.cnf

[client]
#password       = your_password
#port           = 3306
#socket         = /tmp/mysql.sock
default-character-set = utf8

# Here follows entries for some specific programs
[mysqld_multi]
mysqld     = /usr/local/mysql/bin/mysqld_safe
mysqladmin = /usr/local/mysql/bin/mysqladmin
user       = root
log = /var/log/mysql/mysqld.multi.log
#password       =      #如果你的mysql实例有密码这一项就要启动,并且写上密码,不然管理脚本可以启动,不能停止

[mysqld1]
port=3306
socket=/tmp/mysql3306.sock
pid-file=/tmp/mysql3306.pid
max_allowed_packet=1M
net_buffer_length=2k
table_open_cache=4
sort_buffer_size=64k
thread_stack=128k
basedir=/usr/local/mysql
datadir=/data/mydata1
server-id=1

[mysqld2]
port=3307
socket=/tmp/mysql3307.sock
pid-file=/tmp/mysql3307.pid
max_allowed_packet=1M
net_buffer_length=2k
table_open_cache=4
sort_buffer_size=64k
thread_stack=128k
basedir=/usr/local/mysql
datadir=/data/mydata2
server-id=1

[mysqld3]
port=3308
socket=/tmp/mysql3308.sock
pid-file=/tmp/mysql3308.pid
max_allowed_packet=1M
net_buffer_length=2k
table_open_cache=4
sort_buffer_size=64k
thread_stack=128k
basedir=/usr/local/mysql
datadir=/data/mydata3
server-id=1
#
# The MariaDB server

 

多实例管理脚本

[root@e3 mariadb-10.0.15]# cp /usr/local/mysql/support-files/mysqld_multi.server /etc/init.d/mysqld.multi
[root@e3 mariadb-10.0.15]# chmod +x /etc/init.d/mysqld.multi

 

修改多实例脚本来同时启动,关闭3个实例

[root@e3 mariadb-10.0.15]# vim /etc/init.d/mysqld.multi
编辑修改
#!/bin/sh
#
# A simple startup script for mysqld_multi by Tim Smith and Jani Tolonen.
# This script assumes that my.cnf file exists either in /etc/my.cnf or
# /root/.my.cnf and has groups [mysqld_multi] and [mysqldN]. See the
# mysqld_multi documentation for detailed instructions.
#
# This script can be used as /etc/init.d/mysql.server
#
# Comments to support chkconfig on RedHat Linux
# chkconfig: 2345 64 36
# description: A very fast and reliable SQL database engine.
#
# Version 1.0
#

basedir=/usr/local/mysql
bindir=/usr/local/mysql/bin
conf=/etc/my.cnf
export PATH=$PATH:$bindir

if test -x $bindir/mysqld_multi
then
  mysqld_multi="$bindir/mysqld_multi";
else
  echo "Can't execute $bindir/mysqld_multi from dir $basedir";
  exit;
fi

case "$1" in
    'start' )
        "$mysqld_multi" --defaults-extra-file=$conf start $2
        ;;
    'stop' )
        "$mysqld_multi" --defaults-extra-file=$conf stop $2
        ;;
    'report' )
        "$mysqld_multi"  --defaults-extra-file=$conf report $2
        ;;
    'restart' )
        "$mysqld_multi" --defaults-extra-file=$conf stop $2
        "$mysqld_multi" --defaults-extra-file=$conf start $2
        ;;
    *)
        echo "Usage: $0 {start|stop|report|restart}" >&2
        ;;
esac


来测试!

[root@e3 mariadb-10.0.15]# /etc/init.d/mysqld.multi start 1,2,3
[root@e3 mariadb-10.0.15]# netstat -antlp |grep mysqld
tcp        0      0 :::3307                     :::*                        LISTEN      20628/mysqld        
tcp        0      0 :::3308                     :::*                        LISTEN      20630/mysqld        
tcp        0      0 :::3306                     :::*                        LISTEN      20619/mysqld        
[root@e3 mariadb-10.0.15]# /etc/init.d/mysqld.multi stop 1,2,3
[root@e3 mariadb-10.0.15]# netstat -antlp |grep mysqld

如何连接数据库

[root@e3 tmp]# mysql -S /tmp/mysql3307.sock    这样可以连接
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 10.0.15-MariaDB Source distribution

Copyright (c) 2000, 2014, Oracle, SkySQL Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> 

[root@e3 tmp]# mysql -uroot -h127.0.0.1 -P3306 -p   这样也可以连接
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.0.15-MariaDB Source distribution

Copyright (c) 2000, 2014, Oracle, SkySQL Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

以此类推。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

© 著作权归作者所有

雁南飞丶
粉丝 37
博文 187
码字总数 248167
作品 0
西安
运维
私信 提问
加载中

评论(2)

赫兹
赫兹
够详细!!👍👍
clouddyy
clouddyy
收藏
python多版本管理pyenv,virtualenv指定版本创建虚拟环境

virtualenv为应用提供了隔离的Python运行环境,解决了不同应用间多版本冲突问题。 安装: 创建独立python环境: 1、创建目录 2、创建一个独立的python环境 加上了参数,这样,已经安装到系统...

gk4030
2016/12/05
229
0
实现Web应用的高并发、负载均衡配置(2) - MySQL环境配置

一、查看CentOS是否安装MySQL # rpm -qa | grep mysql //查看该操作系统上是否已经安装了mysql数据库 rpm -e mysql  // 普通删除模式 yum -y install make gcc-c++ cmake bison-devel ncur...

三平行者
2016/04/22
132
0
Ceph librados编程访问

引言 我需要针对Ceph的对象存储直接进行编程访问,看看用网关和不用网关下的性能差别。基于gate-way进行访问例子已经走通。现在 要测的是不走网关,用librados直接和Ceph集群打交道。 环境配...

西昆仑
2015/10/13
1K
3
linux环境安装redis服务

linux安装redis服务 系统环境:centos6.5 redis3.2.9 php5.3 准备工作: 下载redis(下载到目录/usr/src): wget http://download.redis.io/redis-stable.tar.gz 解压 tar zxvf redis-stabl......

fz8780
2017/06/28
0
0
centos6.5 安装rabbitMQ3.6.6

centos6.5 安装rabbitMQ3.6.6 1.安装依赖包 yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel 2.安装语言环境Erlang 2.1 下载 http:/......

梦在这里
2017/05/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

postman批量测试

postman批量调用: 先单个调用,成功了 再save为collection 再点击三角形,点击run 设置1000次,run就可以 见《postman批量测试.docx》

Danni3
34分钟前
8
0
js 对象操作 js 对象和对象赋值 去除关联性 对象原型操作 把一个对象A赋值给另一个对象B 并且对象B 修改 不会影响 A对象

当我们在项目需要 复制一个对象到另一个对象并且 被复制的对象不能受复制后的对象的影响。 我先总结下 我们哪些方法可以复制对象 // 直接赋值var obj1 = { a: 1 };var obj2 = obj1;...

xiaogg
35分钟前
7
0
Go微服务全链路跟踪详解

在微服务架构中,调用链是漫长而复杂的,要了解其中的每个环节及其性能,你需要全链路跟踪。 它的原理很简单,你可以在每个请求开始时生成一个唯一的ID,并将其传递到整个调用链。 该ID称为C...

倚天码农
49分钟前
8
0
QML笔记-对QML中信号与槽的基本认识

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/qq78442761/article/details/90753986 目录 基本概念 演示...

shzwork
56分钟前
5
0
SSH安全加强两步走

从 OpenSSH 6.2 开始已经支持 SSH 多因素认证,本文就来讲讲如何在 OpenSSH 下启用该特性。 OpenSSH 6.2 以后的版本多了一个配置项 AuthenticationMethods。该配置项可以让 OpenSSH 同时指定...

xiangyunyan
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部