在centos7环境下建立MariaDB多实例
环境全部基于vmware player 12
os: centos7
mariadb: mariadb-10.1.12-linux-x86_64.tar.gz
主要根据MariaDB给出的帮助文档,以及网上的这篇帖子进行操作
中间碰到了无数问题,在google的帮助下都一一解决了
耗费好几个小时,我真是个鶸
su root #切换到root用户
groupadd mysql #添加mysql组
useradd -g mysql mysql #在mysql组中添加mysql用户
cd /usr/local
gunzip < /home/cc/Destop/mariadb-10.1.12-linux-x86_64.tar.gz | tar xvf - #解压MariaDB二进制安装包
ln -s mariadb-10.1.12-linux-x86_64 mysql #创建符号链接
cd mysql
chown -R mysql . #修改权限
chgrp -R mysql . #修改权限
mkdir -p /var/lib/mysql3307 #创建数据文件夹
chmod --reference /var/lib/mysql /var/lib/mysql3307 #将数据文件夹的访问权限授予mysql,否则这个文件夹只有root用户可以访问
chown --reference /var/lib/mysql /var/lib/mysql3307
scripts/mysql_install_db --user=mysql --datadir=/var/lib/mysql3307 #初始化数据文件夹
cp -p /etc/my.cnf /var/lib/mysql3307/my.cnf #在数据文件夹中添加my.cnf配置文件,下一步会修改它
修改/var/lib/mysql3307/my.cnf,如下所示
[mysqld]
datadir=/var/lib/mysql3307
socket=/var/lib/mysql/mysql3307.sock
port=3307[mysqld_safe]
log-error=/var/log/mysqld3307.log
pid-file=/var/run/mysqld/mysqld3307.pid
bin/mysql_safe --defaults-file=/var/lib/mysql3307/my.cnf --user=mysql &
这一步后开始报错,查看错误信息后发现,是因为默认的位于/etc/下的my.cnf文件中,有这样两个路径: /var/og/mariadb/mysql.log 和 /var/run/mariadb/mysql.pid,而这两个路径不存在,所以报错
创建这两个文件夹后,依然报错,原因是权限不够,将/var/run/mariadb目录授权给mysql用户即可
bin/mysql_safe --defaults-file=/var/lib/mysql3307/my.cnf & #以我们指定的my.cn配置文件为要求,启动mysq实例
然后用命令 netstat -tanp | grep 3307,即可看到mysql已经在监听3307端口了
bin/mysql -uroot -p -h127.0.0.1 -P3307,连入mysql
修改root密码,然后用source导入数据库初始化脚本
bin/mysqladmin -S /var/lib/mysql/mysql3307.sock shutdown -P #结束3307号mysql进程
cp -r -p /var/lib/mysql3307 /var/lib/mysql3308 #复制mysql数据文件夹,-p参数是为了连同权限一起复制,否则复制过来的权限全是root,mysql就无法访问了
cp -r -p /var/lib/mysql3307 /var/lib/mysql3309
修改mysql3308与mysql3309文件夹中的my.cnf文件,然后运行
bin/mysqld_safe --defaults-file=/var/lib/mysql3307/my.cnf &
bin/mysqld_safe --defaults-file=/var/lib/mysql3308/my.cnf &
bin/mysqld_safe --defaults-file=/var/lib/mysql3309/my.cnf &
即可同时运行三个MariaDB数据库实例
最新文章
- GIT文档
- NEsper Nuget包
- ios上的 button和input-button为什么不水平居中的
- Flyweight
- ASP.NET MVC Controller Session问题
- “人少也能办大事”---K2 BPM老客户交流会
- 在Linux环境下给php添加mbstring扩展
- Vs2010中rdlc报表绑定DataTable数据源
- gcc c语言中scanf输入格式不正确,清空缓冲区问题
- CSS3中更灵活的布局方式
- gnome/KDE安装,gnome出现问题,重新安装nvdia驱动
- Python数据分析Python库介绍(1)
- 实际开发中,实用的辅助iOS开发的工具
- Liunx find/locate/whereis/which 总结
- Linux服务器可以进百度,但是进阿里云或者别的一些网站提示‘错误代码:NS_ERROR_NET_INADEQUATE_SECURITY’的问题
- Debian/Ubuntu 下网易云音乐无法由图标/列表 打开的解决方案
- 【网络编程4】网络编程基础-ARP响应(ARP欺骗之中间人攻击)
- Oracle-PLSQL提示“记录被另一个用户锁住”
- maprduce 中reduce数量
- javascript 闭包学习