mariadb多实例实现
环境:centos7,yum 安装mariadb5.5
mkdir /mysqldb/{3306,3307.3308}/{etc,socket,pid,log,data} -pv
chown -R mysql.mysql /mysqldb/
mysql_install_db --datadir=/mysqldb/3306/data --user=mysql --basedir=/usr datadir数据库路径 basedir程序路径
mysql_install_db --datadir=/mysqldb/3307/data --user=mysql --basedir=/usr
mysql_install_db --datadir=/mysqldb/3308/data --user=mysql --basedir=/usr
mysql -e 'show variables like "basedir";' 查看basedir路径
vim /mysqldb/3306/etc/my.cnf
cp /etc/my.cnf /mysqldb/3306/etc/
[mysqld]
port=
datadir=/mysqldb//data
socket=/mysqldb//socket/mysql.sock symbolic-links= [mysqld_safe]
log-error=/mysqldb//log/mariadb.log
pid-file=/mysqldb//pid/mariadb.pid
cp /mysqldb/3306/etc/my.cnf /mysqldb/{3307,3308}/etc/
sed -i 's/3306/3307/' /mysqldb/3307/etc/my.cnf 将3306改为3307
sed -i 's/3306/3307/' /mysqldb/3308/etc/my.cnf 将3306改为3308
cd /mysqldb/3306
vim mysqld 制作脚本
#!/bin/bash port=
mysql_user="root"
mysql_pwd="" root的数据库密码,关闭数据库时调用,不用再输入,输错,关闭时会报错
cmd_path="/usr/bin"
mysql_basedir="/mysqldb"
mysql_sock="${mysql_basedir}/${port}/socket/mysql.sock" function_start_mysql()
{
if [ ! -e "$mysql_sock" ];then
printf "Starting MySQL...\n"
${cmd_path}/mysqld_safe --defaults-file=${mysql_basedir}/${port}/etc/my.cnf &> /dev/null &
else
printf "MySQL is running...\n"
exit
fi
} function_stop_mysql()
{
if [ ! -e "$mysql_sock" ];then
printf "MySQL is stopped...\n"
exit
else
printf "Stopping MySQL..\n"
# ${cmd_path}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S ${mysql_sock} shutdown
#此行注释的是关闭脚本时需要使用密码
${cmd_path}/mysqladmin -u ${mysql_user} -S ${mysql_sock} shutdown
fi
} function_restart_mysql()
{
printf "Restarting MySQL...\n"
funtions_stop_mysql
sleep
funtion_start_mysql
} case $ in
start)
function_start_mysql
;;
stop)
function_stop_mysql
;;
restat)
function_restart_mysql
;;
*)
printf "Usage: ${mysql_basedir}/${port}/bin/mysqld {start|stop|restart}\n"
esac
chmod 700 mysqld 设置高权限,脚本内会保存一个关闭服务的密码
启动时带上路径
/mysqldb/3306/mysqld start|stop|restart
/mysqldb/3307/mysqld start|stop|restart
/mysqldb/3308/mysqld start|stop|restart
进入数据库需要带上路径
mysql -S /mysqldb/3306/socket/mysql.sock
mysql -S /mysqldb/3307/socket/mysql.sock
mysql -S /mysqldb/3308/socket/mysql.sock
进入数据库为root增加密码
update mysql.user set password=password("centos") where user='root'; 为数据库mysql的用户增加密码,并加密密码,用户名为root
flush privileges 刷新权限,启用密码
mysql -S /mysqldb/3306/socket/mysql.sock -uroot -pcentos 在数据库外设定root密码,在数据库里面设定密码后需要刷新权限,否则还是用旧密码进入,刷新后按数据库内新密码进入
增加密码后数据库连接,需要加上账号和密码
mysql -S /mysqldb/3306/socket/mysql.sock -uroot -pcentos
select user,password,host from mysql.user; 查看mysql数据库的user,password,host,信息,以user为索引
drop user ''@'localhost';
drop user ''@'localhost.localdomain';
drop user'root'@'localhost.localdomain'; 删除空账号,删除几个ipv6地址账号
drop user'root'@'::1';
show databases; 查看本Mysql里的数据库文件
drop database test; 删除无用的test数据库
破解登陆mysql密码:
vim /mysqldb/3306/etc/my.cnf
[mysqld]
port=
datadir=/mysqldb//data
socket=/mysqldb//socket/mysql.sock
skip_grant_tables 添加此行
symbolic-links= [mysqld_safe]
log-error=/mysqldb//log/mariadb.log
pid-file=/mysqldb//pid/mariadb.pid
重启服务,即可空口令进入
mariadb多实例实现的更多相关文章
- 在centos7环境下建立MariaDB多实例
环境全部基于vmware player 12 os: centos7 mariadb: mariadb-10.1.12-linux-x86_64.tar.gz 主要根据MariaDB给出的帮助文档,以 ...
- mariadb多实例搭建
测试环境基于centos7.2,腾讯云实验室,学习搭建! https://www.qcloud.com/developer 多实例mysql,能更加理解mysql安装的基本过程!及简单使用... ma ...
- MySQL(mariadb)多实例应用与多实例主从复制
MySQL多实例 mysql多实例,简单理解就是在一台服务器上,mysql服务开启多个不同的端口(如3306.3307,3308),运行多个服务进程.这些 mysql 服务进程通过不同的 socket ...
- 二进制mariadb多实例
实验环境: centos7.6 :IP: 192.168.99.110 1.首先下载二进制的压缩包,解压到一个指定的目录/hx/下 [root@centos7 hx]#tar xf mariadb-1 ...
- MariaDB多实例的安装配置
初始化数据库: mysql_install_db --basedir=/var/lib/mysql --datadir=/data/3306/data --user=mysql mysql_inst ...
- Mariadb多实例启动脚本
#!/bin/bash port=3306 mysql_user="root" mysql_pwd="centos" cmd_path="/app/m ...
- 连接云MariaDB实例
新建实例 MariaDB CVM 内网连接 CVM远程登录测试(同一个VPC下): CVM安装客户端: yum install mysql 连接: mysql -h MariaDB内网ip -u 数据 ...
- MySQL并发复制系列三:MySQL和MariaDB实现对比
http://blog.itpub.net/28218939/viewspace-1975856/ 并发复制(Parallel Replication) 系列三:MySQL 5.7 和MariaDB ...
- Mysql multi实现mysql双实例
Mysql multi实现mysql双实例 1.添加mysql用户 以root登录,新建mysql用户组 groupadd mysql useradd -d /data/mariadb -g mysq ...
随机推荐
- VB.NET中的模块
在C#中有“静态类”的概念,自然里边全部的方法都是静态的.这意味着你可以直接通过"类名.方法名"去调用(例如System的Math类就是典型).在VB.NET中,没有“静态类”的概 ...
- FlashFXP出现“数据Socket错误,连接超时”解决方案
把FlashFXP选项中的"使用被动模式"的勾去掉就正常了. 或者在路由上映射服务端设定的被动模式所使用的所有端口,server-u就10个左右,微软的ftp是多少个,偶就不清楚了 ...
- 关于get_magic_quotes_gpc()函数(交互数据转义的判断)
在PHP中get_magic_quotes_gpc()函数是内置的函数,这个函数的作用就是得到php.ini设置中magic_quotes_gpc选项的值. 那么就先说一下magic_quotes_g ...
- POJ 2594 —— Treasure Exploration——————【最小路径覆盖、可重点、floyd传递闭包】
Treasure Exploration Time Limit:6000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64 ...
- C++ 虚函数、纯虚函数、虚继承
1)C++利用虚函数来实现多态. 程序执行时的多态性通过虚函数体现,实现运行时多态性的机制称爲动态绑定:与编译时的多态性(通过函数重载.运算符重载体现,称爲静态绑定)相对应. 在成员函数的声明前加上v ...
- Windows Store 应用中获取程序集版本号的方法
本文为个人博客备份文章,原文地址: http://validvoid.net/windows-store-app-get-assembly-version/ WinRT 中对反射做了很多限制,假设 W ...
- webpack-webpackConfig-配置说明-多页面
入口文件entry 配置 /* 例子: 项目目录结构: ├─src # 当前项目的源码 ├─pages # 各个页面独有的部分,如入口文件.只有该页面使用到的css.模板文件等 │ ├─alert # ...
- table表格td内内容自动换行
项目开发时,遇到问题:td内传入数据,全是字母,不会自动换行 一般字母数字/特殊符号的话,会被浏览器默认是一个字符串或者说一个单词,不会自动换行 所以需要设置一下,让表格内容自动换行. 1.给td标签 ...
- vue-cli -- > 项目基本构建的方法
本文档目的在于让对vue了解比较少的同学,能够快速搭建属于自己的vue项目.(window) 一.构建项目的前提条件 1.确保本机安装了node.js ^6 --> javascript 的服务 ...
- 探索Skip List (跳跃表)
附William Pugh的论文 Skip Lists: A Probabilistic Alternative to Balanced Trees 写在前面 以下内容针对的是Skip List的插入 ...