环境: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多实例实现的更多相关文章

  1. 在centos7环境下建立MariaDB多实例

    环境全部基于vmware player 12 os: centos7 mariadb: mariadb-10.1.12-linux-x86_64.tar.gz 主要根据MariaDB给出的帮助文档,以 ...

  2. mariadb多实例搭建

    测试环境基于centos7.2,腾讯云实验室,学习搭建! https://www.qcloud.com/developer 多实例mysql,能更加理解mysql安装的基本过程!及简单使用... ma ...

  3. MySQL(mariadb)多实例应用与多实例主从复制

    MySQL多实例 mysql多实例,简单理解就是在一台服务器上,mysql服务开启多个不同的端口(如3306.3307,3308),运行多个服务进程.这些 mysql 服务进程通过不同的 socket ...

  4. 二进制mariadb多实例

    实验环境: centos7.6 :IP: 192.168.99.110 1.首先下载二进制的压缩包,解压到一个指定的目录/hx/下 [root@centos7 hx]#tar xf mariadb-1 ...

  5. MariaDB多实例的安装配置

    初始化数据库: mysql_install_db  --basedir=/var/lib/mysql --datadir=/data/3306/data --user=mysql mysql_inst ...

  6. Mariadb多实例启动脚本

    #!/bin/bash port=3306 mysql_user="root" mysql_pwd="centos" cmd_path="/app/m ...

  7. 连接云MariaDB实例

    新建实例 MariaDB CVM 内网连接 CVM远程登录测试(同一个VPC下): CVM安装客户端: yum install mysql 连接: mysql -h MariaDB内网ip -u 数据 ...

  8. MySQL并发复制系列三:MySQL和MariaDB实现对比

    http://blog.itpub.net/28218939/viewspace-1975856/ 并发复制(Parallel Replication) 系列三:MySQL 5.7 和MariaDB ...

  9. Mysql multi实现mysql双实例

    Mysql multi实现mysql双实例 1.添加mysql用户 以root登录,新建mysql用户组 groupadd mysql useradd -d /data/mariadb -g mysq ...

随机推荐

  1. LeetCode 887.鸡蛋掉落(C++)

    每个蛋的功能都是一样的,如果一个蛋碎了,你就不能再把它掉下去. 你知道存在楼层 F ,满足 0 <= F <= N 任何从高于 F 的楼层落下的鸡蛋都会碎,从 F 楼层或比它低的楼层落下的 ...

  2. 现有分布式技术(socket、.net remoting、asp.net webservice、WSE、ES)和wcf的比较及优势

    1:socket VS remoting 使用socket无疑是效率最高的.但是,在复杂的接口环境下,socket的开发效率也是最低的.故在兼顾开发效率的情况下,可以使用remoting来代替sock ...

  3. .NET MVC强类型参数排除和包含属性

    MVC接收强类型对象时排除或只接收某几个属性时可使用Bind特性: Bind(Include="属性");如果相包含多个属性可以用逗号分割符分开:Bind(Include=&quo ...

  4. 负载均衡配置下的不同服务器【Linux】文件同步问题

    负载均衡配置下的不同服务器[Linux]文件同步问题2017年04月13日 22:04:28 守望dfdfdf 阅读数:2468 标签: linux负载均衡服务器 更多个人分类: 工作 问题编辑版权声 ...

  5. ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务解决办法

    ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务解决办法: 1.首先打开cmd命令 查看本地TNSPING配置 是否ok?然后找到 Oracle 安装文件 中 listener. ...

  6. (生产)axios - 请求接口

    参考:https://www.awesomes.cn/repo/mzabriskie/axios axios 介绍 基于 Promise 的 HTTP 请求客户端,可同时在浏览器和 node.js 中 ...

  7. Android 5.0 以上监听网络变化

    大家好,大概有一个多月没有更新博客了,我是干什么去了呢?很明显,程序员当然要加班……这一次跟大家分享一下新项目的一些心得. 监听网络变化在开发中是经常用到的,例如我们断网有一些友好的提示,或者根据不同 ...

  8. 【Angular JS】正确调用JQuery与Angular JS脚本 - 修复Warning: Tired to load angular more than once

    自己正在做一个小网站,使用Angular JS + Express JS + Mongo DB,在开发过程中,遇到一些问题,所以整理出来.希望对大家都有帮助. 这是今天解决的一个问题,Angular ...

  9. Annotation版本的HelloWorld

    hiberante 的 annotation历史: 在hibernate3以后,开始支持Annotation; 先有hiberante再有JPA,有了JPA标准之后,hibernate写了Annota ...

  10. [SVN]TortoiseSVN工具培训4─客户端常用操作命令

    1.权限认证 当进行SVN任何操作时,如果是首次操作,SVN会弹出权限认证. 输入用户名和密码点击确认即可完成认证. 勾选保存用户数据信息,可以避免将来重复输入用户名和密码认证. 2.删除权限认证信息 ...