我想在一台 CentOS 7 机器上运行两个 MySQL 实例。我需要在不同的用户上运行实例。这种方法的原因是需要限制每个实例的资源(CPU 和内存),因为我不希望出现一个实例(为一个应用程序提供服务)利用所有资源的情况,因此其他数据库(和应用程序)会很慢或不运行。功能性的。
如果除了两个实例之外还有其他方法,请随时提出解决方案,但请记住,对特定数据库用户的查询和连接数的限制并不是适合我的情况的解决方案。
所以,我尝试过这个解决方案: 运行MySQL CentOS7的多个实例
但只启动了一个实例。
简而言之:我想在一台机器上运行两个实例,一个在用户 mysql 上,一个在用户 mysql2 上,当然在不同的端口上。
答案1
您将需要复制 mysql 的 systemd 脚本,并将其命名为新名称,它很可能是 mariadb.service,因此您将复制它并创建一个 mariadb2.service 文件,然后编辑该文件以指向您的第二个我的.cnf 文件。
这些 systemd 文件位于 /etc/systemd/system/ 中,但大多数是指向 /usr/lib/systemd/system/servicename.service 的链接
之后,您可以执行诸如 service mariadb2 start/stop 和 systemctl enable mariadb2 之类的操作。