MySQL启动多实例

数据库配置

在mysql主目录下生成数据库文件集

mkdir data_3307
mkdir data_3308
mkdir data_3309

在mysql主目录下配置数据库

./scirpt/mysql_install_db --datadir=/home/fanbin/code/mysql/data_3307 --user=mysql
./script/mysql_install_db --datadir=/home/fanbin/code/mysql/data_3308 --user=mysql
./script/mysql_install_db --datadir=/home/fanbin/code/mysql/data_3309 --user=mysql 

多实例启动配置文件

[mysqld_multi]
mysqld=/home/fanbin/code/mysql/bin/mysqld
mysqladmin=/home/fanbin/code/mysql/bin/mysqladmin
user=root

[mysqld3307]
socket=/tmp/mysql_3307.sock
port=3307
datadir=/home/fanbin/code/mysql/data_3307/
user=mysql

[mysqld3308]
socket=/tmp/mysql_3308.sock
port=3308
datadir=/home/fanbin/code/mysql/data_3308/
user=mysql

[mysqld3309]
socket=/tmp/mysql_3309.sock
port=3309
datadir=/home/fanbin/code/mysql/data_3309/
user=mysql

启动数据库

在bin目录下启动多实例

./mysqld_multi --defaults-file=/home/fanbin/code/mysql/my_multi.cnf start 3307,3308,3309

其他

设置新密码
mysqladmin -uroot -S /tmp/mysql_3307.sock password 123456

登录数据库
mysql -uroot -S /tmp/mysql_3307.sock -p

确认登录的数据库
show variables like ‘%datadir%‘;

查用户
select user,host from mysql.user;

更改全部root用户密码
update user set password=password(‘123456‘) where user=‘root‘;

更改其中host为%
update user set host = ‘%‘ where user = ‘root‘ and host = ‘hp‘;
FLUSH PRIVILEGES;

查权限
mysql> show grants for root;

创建用户
grant select on *.* to [email protected]‘%‘ identified by ‘fanbin‘;

更改新添加用户密码
update user set password=password(‘123456‘) where user=‘fanbin‘;
FLUSH PRIVILEGES;
时间: 2024-10-13 21:13:41

MySQL启动多实例的相关文章

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

MySQL多实例 mysql多实例,简单理解就是在一台服务器上,mysql服务开启多个不同的端口(如3306.3307,3308),运行多个服务进程.这些 mysql 服务进程通过不同的 socket来监听不同的数据端口,进而互不干涉的提供各自的服务. 在同一台服务器上,mysql 多实例会去共用一套 mysql 应用程序,因此在部署 mysql的时候只需要部署一次 mysql程序即可,无需多次部署.但是,mysql多实例之间会各自使用不同的 my.cnf 配置文件.启动程序和数据文件.在提供服

从零开始的MYSQL02 --- MySQL启动方式及故障排查,多实例搭建

1. MySQL的方式及区别     在MySQL启动遇到故障怎么排查 /etc/init/d/mysql start | restart | stop 这个脚本是一般安装后由mysql.server 自动生成,如果是直接解压使用的需要手动添加. 设置mysql自动启动:chkconfig mysql on,如果线上库,我建议关闭自动启动,线上库本着一个原则,出错了就停下来.或者脚本来控制批量的启动与停止. /etc/init.d/mysql  ( mysql.server) /usr/loca

MySQL服务器意外关机-无法启动多实例

就在刚刚,MySQL服务器意外掉电关机-设备启动后,无硬件报错,无法启动多实例 [[email protected] ~]# mysql -uroot  -S /data/3306/mysql.sock  ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/data/3306/mysql.sock' (111) ##无法连接到本地mysql socket ## 查看日志:没有记录error 尝试启动my

MySQL启动与多实例安装

启动方式及故障排查 一.几个问题 1.1 /etc/init.d/mysql 从哪来 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 1.2 mysql能否设置成开机启动 可以,但是没必要 # 方法1: chkconfig mysql on # 方法2: echo "/etc/init.d/mysql start" >> /etc/rc.local 1.3 开机启动? 有没有必要把MySQL设

mysql启动分析

1.mysql启动配置文件加载路径 /etc/my.cnf/ /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf 2.mysql启动方式 service mysqld start /etc/init.d/mysqld start 说明mysqld来自 cp /usr/local/mysql/support-file/mysql.server  /etc/init.d/mysqld 以下3种方式,可用启动多实例 /usr/local/my

MySQL安装+多实例

yum 安装 :    yum  install   mysql-server 编译安装   5.0-5.1 二进制免编译安装 cmake方式编译   5.5-5.6 1.3 安装相关包 1.3.1 cmake软件 cd /home/oldboy/tools/ tar xf cmake-2.8.8.tar.gz cd cmake-2.8.8 ./configure #CMake has bootstrapped.  Now run gmake. gmake gmake install cd ..

mysql启动停止,一台服务器跑 多个mysql数据库

一.以非特权用户运行MySQL服务器在讨论如何启动MySQL服务器之前,让我们考虑一下应该以什么用户身份运行MySQL服务器.服务器可以手动或自动启动.如果你手动启动它, 服务器以你登录Unix(Linux)的用户身份启动,即如果你用paul登录Unix并启动服务器,它用paul运行:如果你用su命令切换到root,然后运启动服务器,则它以root运行.然而,大多数情况下你可能不想手动启动服务器,最有可能是你安排MySQL服务器在系统引导时自动启动,作为标准引导过程的一部分,在Unix下,该引导

MySQL 5.7--------多实例部署最佳实战

1. 背景 MySQL数据库的集中化运维,可以通过在一台服务器上,部署运行多个MySQL服务进程,通过不同的socket监听不同的服务端口来提供各自的服务.各个实例之间是相互独立的,每个实例的datadir, port, socket, pid都是不同的. 2. 多实例特点 * 有效利用服务器资源,当单个服务器资源有剩余时,可以充分利用剩余的资源提供更多的服务. * 资源互相抢占问题,当某个服务实例服务并发很高时或者开启慢查询时,会消耗更多的内存.CPU.磁盘IO资源,导致服务器上的其他实例提供

mysql启动关闭

mysql启动关闭1.启动方法一:/usr/local/mysql/bin/mysqld --defaults-file=/data/3306/my.cnf --user=root 2>/dev/null & 日志直接输出有学终端方法二:/bin/sh /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/3306/my.cnf --user=mysql 2>&1 > /dev/null & 日志输出到日志文