数据库服务多实例创建

文章讲述了如何在服务器上创建和配置数据库的多实例,包括创建数据目录,初始化数据库,配置不同端口的my.cnf文件,以及启动数据库服务。此外,还详细说明了重置数据库密码的过程,涉及跳过授权表、禁止远程登录和修改root用户的密码。
摘要由CSDN通过智能技术生成

在一个服务器中,创建多个数据库进程(多实例)
   多实例:
   一般在一个系统环境中,可以运行多个相同的服务程序信息,并且产生不同的进程和网络端口信息,就可以称为多实例概念;
   在数据库服务运行过程中,也可以启动多个数据库服务程序,产生多个数据库服务进程和不同的服务端口,形成多实例;
      
   构建数据库多实例:
   第一步骤:创建多实例准备工作
   mkdir -p /data/330{7..9}/data 
   chown -R mysql. /data/ 
   mv /etc/my.cnf /tmp/

   mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307/data
   mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/3308/data
   mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/3309/data
   
cat >>/data/3307/data/my.cnf<<EOF
[mysql]
socket=/tmp/mysql3307.sock
[mysqld]
user=mysql
port=3307
basedir=/usr/local/mysql
datadir=/data/3307/data
socket=/tmp/mysql3307.sock   
EOF

cat >>/data/3308/data/my.cnf<<EOF
[mysql]
socket=/tmp/mysql3308.sock
[mysqld]
user=mysql
port=3308
basedir=/usr/local/mysql
datadir=/data/3308/data
socket=/tmp/mysql3308.sock   
EOF

cat >>/data/3309/data/my.cnf<<EOF
[mysql]
socket=/tmp/mysql3309.sock
[mysqld]
user=mysql
port=3309
basedir=/usr/local/mysql
datadir=/data/3309/data
socket=/tmp/mysql3309.sock   
EOF

mysqld_safe --defaults-file=/data/3307/data/my.cnf &
mysqld_safe --defaults-file=/data/3308/data/my.cnf &
mysqld_safe --defaults-file=/data/3309/data/my.cnf &
   
   
4) 重置数据库密码
第一个里程:重新启动数据库服务
1)授权表 user db tables_priv  -- 跳过授权表(数据库启动不要加载授权表)
2)禁止远程用户登录            -- tcp 地址 3306 (数据库服务启动不要有监听端口)
mysqld_safe --skip-grant-tables --skip-networking &

第二个里程:重置用户密码信息
flush privileges;
alter user root@'localhost' identified by '123456';
quit

第三个里程:重新正常启动数据库
/etc/init.d/mysqld start 

第四个里程:测试登录
mysql -uroot -p123456

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值