mysql安装之多实例多配置文件安装「建议收藏」

mysql安装之多实例多配置文件安装「建议收藏」一、多实例安装简介 所谓多实例安装其实是指在一台机器上开启多个不同的mysql服务端口(3306,3307),运行多个mysql服务进程,这些服务进程通过不同的socket监听不同的服务端口来提供各…

一、多实例安装简介

所谓多实例安装其实是指在一台机器上开启多个不同的mysql服务端口(3306,3307),运行多个mysql服务进程,这些服务进程通过不同的socket监听不同的服务端口来提供各自的服务;多实例安装主要目的是为了有效利用服务器资源,但是也存在资源互相抢占问题。

二、安装和启动(root用户进行的操作)

$ yum install -y libaio  #安装mysql依赖软件包
$ groupadd mysql  #添加mysql权限组
$ useradd -r -g mysql -s /bin/false mysql  #添加mysql权限组的非登录用户mysql
$ cd /usr/local  #进入安装目录
$ tar zxvf mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz  #解压MySQL安装包
$ mv mysql-5.7.27-linux-glibc2.12-x86_64 mysql  #重命名为mysql,此处也可以建立软连接,MySQL配置中使用的是mysql,所以此处目录名最好为mysql,不要修改成其它的。
$ cd mysql
$ mkdir -p data/3306/{data,tmp,log}  #创建3306实例的相关目录
$ touch data/3306/log/mysql.log  #创建mysql日志文件,此文件mysql不会自动生成,只好先手动生成了
$ cp /etc/my.cnf data/3306/  #创建3306实例的配置文件
$ vi data/3306/my.cnf  #修改my.cnf配置文件,参数如下图(参数就不再介绍了,和单实例的配置几乎一样,就mysqld中多了port参数)

代码100分

mysql安装之多实例多配置文件安装「建议收藏」

代码100分$ cp -R data/3306 data/3307  #将3306实例相关配置复制到3307实例
$ cat data/3307/my.cnf | tr [3306] [3307] >> my1.cnf ; mv -f my1.cnf my.cnf  #修改3307配置文件将其中的3306全局替换成3307
$ chown mysql:mysql -R data/  #修改权限
$ bin/mysqld --defaults-file=/usr/local/mysql/data/3306/my.cnf --initialize-insecure --user=mysql  #初始化3306实例数据库,此处会加载my.cnf中的datadir参数,并在其配置目录创建初始数据库,此处通过--initialize-insecure参数指定不生成默认密码
$ bin/mysqld --defaults-file=/usr/local/mysql/data/3307/my.cnf --initialize-insecure --user=mysql  #初始化3307实例数据库,此处会加载my.cnf中的datadir参数,并在其配置目录创建初始数据库,此处通过--initialize-insecure参数指定不生成默认密码
$ bin/mysqld_safe --defaults-file=/usr/local/mysql/data/3306/my.cnf --user=mysql &  #启动3306数据库实例
$ bin/mysqld_safe --defaults-file=/usr/local/mysql/data/3307/my.cnf --user=mysql &  #启动3307数据库实例
$ ps -ef | grep mysql | grep -v grep  #此处有3306和3307实例说明启动了2个mysql服务
$ bin/mysql -S /usr/local/mysql/data/3306/tmp/mysql.sock  #启动mysql客户端连接3306数据库实例,此处可以启动并进入mysql命令行,说明mysql服务没有问题
$ bin/mysql -S /usr/local/mysql/data/3307/tmp/mysql.sock  #启动mysql客户端连接3307数据库实例,此处可以启动并进入mysql命令行,说明mysql服务没有问题

三、将mysql相关命令配置成全局

$ vi /etc/profile  #修改全局配置文件将mysql相关命令设置进环境变量中

mysql安装之多实例多配置文件安装「建议收藏」

此处就不写多实例MySQL启动的脚本了,有兴趣的可以参考/usr/local/mysql/support-files/mysqld_multi.server文件或者自行百度。

四、多实例数据库过程中遇到的错误

  1. ERROR 1045 (28000): Unknown error 1045

         此错误是我使用bin/mysql -S /usr/local/mysql/data/3306/tmp/mysql.sock命令连接数据库时报的错误, 后来看了下我使用这个命令时登录用户是普通用户非root且该用户不在mysql用户列表中,所以     需要把命令改成bin/mysql -uroot -p -S /usr/local/mysql/data/3306/tmp/mysql.sock来指定mysql连接用户。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/11187.html

(0)
上一篇 2022-12-15
下一篇 2022-12-15

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注