单实例MySQL的启动和关闭的方法

优质
小牛编辑
128浏览
2023-12-01

方法一:常规启动关闭数据库方式(推荐)

  • 常规方法启动数据库

启动MySQL命令

[root@localhost ~]# /etc/init.d/mysql start
Starting MySQL..         [确定]
  • 查看MySQL端口
[root@localhost ~]# netstat -tunpl|grep mysql
tcp  0  0 0.0.0.0:3306     0.0.0.0:*      LISTEN     2505/mysqld
  • 查看MySQL进程
[root@localhost ~]# ps -ef |grep mysqld
root 2264 1 0 11:35 pts/0 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/localhost.pid
mysql 2505 2264 0 11:35 pts/0 00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/localhost.err --pid-file=/usr/local/mysql/data/localhost.pid --socket=/tmp/mysql.sock --port=3306
root  2548   2180  0 11:37 pts/0   00:00:00 grep mysql

MySQL启动基本原理说明

  1. /etc/init.d/mysqld是一个shell启动脚本,启动后最终会调用mysqld_safe脚本,最后调用myslqd服务启动mysql,如下/etc/init.d/mysqld 脚本中调用mysqld_safe的程序
    $bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 &
  2. 初始化数据库时,MySQL系统给的启动方法
mysqld_safe --user=mysql &
提示: 当找回root密码时,会经常使用mysqld_safe --user=mysql &带参数启动
自己开发的脚本启动数据库时可能会用到这个启动方法
/etc/init.d/mysqld和mysqld_safe --user=mysql &的启动实质是一样的

常规方法关闭数据库

关闭数据库命令

[root@localhost init.d]# /etc/init.d/mysqld stop
Shutting down MySQL.                                       [确定]
[root@localhost init.d]# netstat -tunpl |grep :3306
提示: 使用编译及二进制安装的MySQL,mysqld启动脚本由support-files/mysql.server复制而来

强制关闭数据库

killall mysqld
pkill mysqld
killall -9 mysqld
提示: 用killall关闭,直到出现mysqld:no process killed 表示完成关闭操作
尽量不要粗鲁的杀死数据库进程,生成高并发环境可能引起数据库数据丢失或者数据库无法重新启动

优雅关闭数据库的方法

1. mysqlamin
mysqladmin -uroot -paaaaaa shutdown
2.  自带脚本
/etc/init.d/mysqld stop
3. kill信号的方法
kill -USER2 `cat /usr/local/mysql/data/mysql.pid`

更改MySQL数据库提示符

命令行修改登录提示符

mysql> prompt \u@rose \r:\m:\s>
PROMPT set to '\u@rose \r:\m:\s>'
root@rose 12:31:05>

上述修改提示符是临时的,我们可以通过修改mysql的配置文件修改提示符
在my.cnf配置文件中[mysql]模块下添加如下内容(注意:不是[mysqld]),保存后无需重启mysql,退出当前session,重新登录即可

[mysql]
prompt=\\u@rose \\r:\\m:\\s>

退出MySQL客户端我们使用quit或者exit或者ctrl+c