前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS系统编译安装MariaDB数据库实现多实例

CentOS系统编译安装MariaDB数据库实现多实例

作者头像
咻一咻
发布2020-05-29 11:48:24
5960
发布2020-05-29 11:48:24
举报
文章被收录于专栏:咻一咻

上一篇实现了yum安装多实例 现在开始用编译安装实现多实例

编译安装多实例

第一步:创建账户

代码语言:javascript
复制
[root@centos7 ~]#useradd -r -s /sbin/nologin mysql        
[root@centos7 ~]#id mysql           
uid=988(mysql) gid=983(mysql) groups=983(mysql)
[root@centos7 ~]#getent passwd mysql
mysql:x:988:983::/home/mysql:/sbin/nologin

第二部:准备包组和需要的文件等

代码语言:javascript
复制
[root@centos7 ~]#yum groupinstall "development tools" //安装包组
[root@centos7 ~]#yum install cmake //安装cmake
[root@centos7 ~]#tar xvf mariadb-10.2.12.tar.gz //解压
[root@centos7 ~]#mkdir /mysqldb //创建数据库文件
[root@centos7 ~]#chown mysql.mysql /mysqldb/ //数据库文件权限

[root@centos7 ~]#yum install  ncurses-devel
[root@centos7 ~]#yum install gnutls-devel
[root@centos7 ~]#yum install "libaio-devel"
[root@centos7 ~]#yum install "openssl-devel"
[root@centos7 ~]#yum install libxml2-devel
以上五个包是没有安装过,如果安装了请忽略!

[root@centos7 ~]#cd mariadb-10.2.12/
[root@centos7 mariadb-10.2.12]#cmake . -DCMAKE_INSTALL_PREFIX=/app/mysql -DMYSQL_DATADIR=/mysqldb/ -DSYSCONFDIR=/etc -DMYSQL_USER=mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/app/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_DEBUG=0 -DWITHOUT_MROONGA_STORAGE_ENGINE=1

[root@centos7 mariadb-10.2.12]#make && make instal

第二步:path和生成数据实例及配置文件

代码语言:javascript
复制
path
[root@centos7 mysql]#echo 'PATH=/app/mysql/bin/:$PATH' >/etc/profile.d/mysql.sh
[root@centos7 mysql]#. /etc/profile.d/mysql.sh 

生成数据实例
[root@centos7 app]#/app//mysql/scripts/mysql_install_db --basedir=/app/mysql --datadir=/mysqldb/3306/data --user=mysql
[root@centos7 app]#ll /mysqldb/          
total 0
drwxr-xr-x 3 root root 18 Jan 23 21:36 3306

配置文件
cp /app/mysql/support-files/my-huge.cnf /etc/my.cnf
[root@centos7 app]#vim /etc/my.cnf
[mysqld]
datadir=/mysqldb/3306/data    //这里只需添加自己数据路径即可
port            = 3306

[root@centos7 app]#cp /app/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@centos7 app]#vim  /etc/init.d/mysqld 

添加到启动服务
[root@centos7 app]#chkconfig --add mysqld
[root@centos7 app]#chkconfig --list
mysqld  0:off   1:off   2:on    3:on    4:on    5:on    6:off

[root@centos7 app]#ll /etc/init.d/
-rwxr-xr-x  1 root root 12184 Jan 23 21:43 mysqld
[root@centos7 app]#chown -R mysql.mysql /mysqldb/3306/
[root@centos7 app]#ll -d /mysqldb/3306/               
drwxr-xr-x 3 mysql mysql 18 Jan 23 21:36 /mysqldb/3306/


添加权限
[root@centos7 app]#chgrp -R mysql /app//mysql/
[root@centos7 app]#chmod 775 /app/mysql/

第三步:启动

代码语言:javascript
复制
[root@centos7 ~]#service mysqld start //启动
Starting mysqld (via systemctl):                           [  OK  ]
[root@centos7 ~]#ss -ntl
LISTEN  0   80  :::3306 :::*  
这是3306端口已经启动 需要添加端口 多实例
[root@centos7 ~]#/app//mysql/scripts/mysql_install_db --basedir=/app/mysql --datadir=/mysqldb/3307/data --user=mysql
[root@centos7 ~]#/app//mysql/scripts/mysql_install_db --basedir=/app/mysql --datadir=/mysqldb/3308/data --user=mysql

以下操作3307、3308都需要做 只是端口数字需要改变以下
[root@centos7 ~]#vim /mysqldb/3307/my.cnf //修改和添加了这些
port            = 3307
[mysqld]
datadir=/mysqldb/3307/data
port            = 3307
socket          = /mysqldb/3307/mysql.sock
[mysql_safe]
log-error=/mysqldb/3307/mariadb.log
pid-file=/mysqldb/3307/mariadb.pid

[root@centos7 3307]#vim mysqld 
#!/bin/bash
port=3307  记得修改这个端口
mysql_user="root"
mysql_sock="${mysql_basedir}/${port}/mysql.sock" 这里也修改了一下

[root@centos7 3307]#./mysqld start 启动
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/01/23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 编译安装多实例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档