数据库多实例实验,也是一台设备的数据库开放三个端口供连接

1、计划开放端口3306、3307、3308

2、为好区分,新建目录/data/mydb/,在该目录分别建立3306、3307、3308目录,在其目录下分别再建立etc、log、data、pid、bin目录

Linux环境下实现MariaDB数据库多实例_数据库

3、更改目录权限和所属者所属组

chown -R mysql.mysql /data/mydb/

chmod -R 771 /data/mydb/

Linux环境下实现MariaDB数据库多实例_数据库_02

4、使用数据库生成脚本,对3个数据库存放目录分别进行数据库生成,使用指令/usr/bin/mysql_install_db --datadir=/app/mysql/3306/data --user=mysql;

/usr/bin/mysql_install_db --datadir=/app/mysql/3307/data --user=mysql;

/usr/bin/mysql_install_db --datadir=/app/mysql/3308/data --user=mysql

5、拷贝/etc/my.cnf至目录下自建的/etc

cp /etc/my.cnf /app/mysql/etc,拷贝后进行更改Linux环境下实现MariaDB数据库多实例_多实例_03

更改后复制到3307目录和3308目录下,将3306替换为各自的端口

6、获取mysqld服务脚本,更改其中内容Linux环境下实现MariaDB数据库多实例_多实例_04

更改后复制给3307、3308,分别做更改,并对该服务脚本增加执行权限

7、测试

3307/bin/mysqld start

Linux环境下实现MariaDB数据库多实例_多实例_05

再次看目录,发现已自动生成log、socket和pid,本机如果想连接诶数据库,可以mysql -S /路径/socket

Linux环境下实现MariaDB数据库多实例_数据库_06

8、服务启动后,可以更改口令mysqladmin -uroot -S /路径/socket/*.sock password "PASSWORD",比如说实验中我的设置密码命令mysqladmin -uroot -S /app/mysql/3307/socket/mysql.sock password "mariadb"

Linux环境下实现MariaDB数据库多实例_数据库_07

9、如果做成开机启动的服务,需要将服务脚本拷贝至/etc/init.d/下继续做更改

Linux环境下实现MariaDB数据库多实例_数据库_08

确认有执行权限

Linux环境下实现MariaDB数据库多实例_多实例_09

设置开机启动项目

Linux环境下实现MariaDB数据库多实例_多实例_10

10、重启设备测试

Linux环境下实现MariaDB数据库多实例_多实例_11