mysql 多实例应用

mysql 8.0.1多实例应用:
安装mysql之后,需要创建多个服务实例。操作方法:启动服务引导新的数据存放目录。
需要需改新的my.cnf文件。

在这里插入图片描述
##文件目录都是随意创建的,可根据喜好自行创建。以下参数是需要根据实际的情况去配置的。
user :这边配置使用mysql用户启动,后续启动就不需要添加 --user=mysql命令
port :实列启动后监听的服务端口
server_id:是多个实例的区别。
datadir :数据存放的路径,各个实例需要不一样。
socket: 套接字文件。本地连接会用到(无须定义连接host的具体IP得,只要为空或localhost就可以)
log-error:存放实例启动的日志信息。
pid-file:记录启动实例的进程信息。
这个四个参数需要指定文件存放的路径,若无该目录需要事先创建。
配置文件修改好之后就可以初始化实例了。
初始化命令:

/usr/sbin/mysqld --initialize --basedir=/usr/share/mysql --datadir=/data/mysql3306/data3306 --user=mysql 

这边的 --user=mysql初始化,可以换成自建用户如temp 后面就可以在temp用户下启用

不通的数据库版本,初始化命令可能不一样。具体的没有验证过。

–basedir=/usr/share/mysql 数据库安装路径。(默认安装下的路径,奇怪的是通过ps -ef|grep mysql
看,路径是/usr,如果配置上面的路径,会导致sql错误只显示代码,没有具体的错误信息)。
–datadir=/data/mysql3306/data3306 数据库数据存放路径。
启动数据库:
/usr/bin/mysqld_safe --defaults-file=/data/mysql3306/my.cnf
root用户登陆
初始化的时候会生成一个临时密码,在log文件里。

grep 'temporary password'  /data/mysql3306/log/mysqld3306.log

配置参数:
log_timestamps=SYSTEM 数据库日志时间打印与系统时间一致,不再是默认的UTC

数据库启动使用非root用户初始化,后续就可以正常使用自建用户去启动数据库;参考连接
https://www.cnblogs.com/parasis/p/9318938.html

记录二:mysql 8.0版本实例化后踩过的坑

  1. 由于一台机器实例多个mysql服务,新的示例启动后,登陆mysql服务时,习惯的输入 mysql -uroot -pxxxxxx
    一直提示密码错误,无限纳闷自闭。
    因为sock文件是登陆服务的关键,默认使用的是/var/lib/mysql/mysql.sock文件,新建的示例登录需要这么处理
    mysql -uroot -pxxxxx -S /data/mysql.sock (这个sock文件路径与 --defaults-file=/data/mysql3306/my.cnf里的配置一致)。
  2. mysql8.0以上root密码用户遗忘了重置
    方法一:实例启动命令:mysqld --defaults-file=/data/xxxx/my.cnf --skip-grant-tables
    在这里插入图片描述
    在这里插入图片描述

方法二:修改配置文件my.cnf ,添加配置:skip-grant-tables
在这里插入图片描述
登录mysql后,先重置root用户密码为空,再重启mysql服务
update user set authentication_string = ‘’ where user = ‘root’;
alter user root@‘localhost’ identified by ‘password123’;

这边踩的坑:情景一和情景二在一起出现的时候,你会发现输入mysql命令后,一直提示密码错误,没有跳过密码校验直接登录进去。开始怀疑这个配置是否还有效。。。。/(ㄒoㄒ)/~~

问题1:测试机器关闭,数据库也被强制关机,后面重启一直重启不起来,也没有错误码,启动没有提示具体错误,mysqld.log也没有落日志。

后面想着是不是服务坏了,重新实例化一个好了,实例化没有报错,但是没有生成mysql的初始化文件,怪了,后面跑进去看mysqld.log日志的时候是root用户所属,其他用户只有读取的权限,后面直接改成mysql所属用户,服务就拉起来了。。。

问题2:系统数据归档提示表空间异常,查看mysql对应库下的表空间文件发现用户居然是root的,其他的表空间是mysql,怪了,这是怎么串改掉的。。,改回用户组,重启mysql,可以正常归档数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值