0921.1321天:MySQL的两种启动方式

#每日三件事,第1321天#

  1. MySQL安装

MySQL官方网站www.mysql.com提供了安装包的下载。下载到rpm安装包后,可以使用yum进行安装:

yum localinstall mysql-community-server-5.7.39xxxxxxx.rpm 

默认安装后,在/etc目录中会有一个配置文件my.cnf:

[mysqld]

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

如果想要在同一台服务器上运行多个MySQL实例的话,就单独建个目录,写好my.cnf配置文件,然后初始化数据库就可以了。

比如在/disk1/3307/下面生成my.cnf文件:

port=3307
basedir=/usr/local/mysql
datadir=/disk1/3307/data
socket=/disk1/3307/mysql.sock

symbolic-links=0

log-error=/disk1/3307/mysqld.log
pid-file=/disk1/3307/mysqld.pid

在3307端口再开启一个MySQL服务。
重点来了:
先初始化数据库:

mysql_install_db --defaults-file=/disk1/3307/my.cnf --initialize --user=mysql 

尤其是开启了SeLinux之后,初始化非常必要,否则要手动修改标签

  1. 启动MySQL多实例

对于3306端口的MySQL,可以用systemctl命令来启动。这个启动方式几乎所有的资料都会说。另外一种方式就是通过mysqld命令来启动:

mysqld --defaults-file=/etc/my.cnf --user=mysql

登录mysql的方式都是一样的:

mysql -uroot -P 3306 -p

or:

mysql -uroot -S /var/lib/mysql/mysql.sock -p

启动3307的MySQL:

mysql --defaults-file=/disk1/3307/my.cnf --user=mysql

登录方式和3306是一样。


启动mysql服务:第一,用systemctl start mysqld,查看mysql状态用systemctl status mysqld;第二,用mysqld --defaults-file=/etc/my.cnf --user=mysql。

无论哪种方式,通过ps命令都能看到mysql服务是否已经启动。因此,单纯使用systemctl或者service命令查看mysql服务的状态,是不准确的。

版权声明:
作者:玉兰
链接:https://www.techfm.club/p/41868.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>