mysql数据库程序开机_数据库的启动流程和关闭介绍/mysql初始化配置文件

一 启动

6832befae667cc1133846f2857fc3e91.png

数据库启动的最终结果就是实列的启动,就是守护进程mysqld启动,还有线程,预分配的内存结构

我们说musqld不是自助启动的,他是mysqld_safe这个脚本拉起来的

mysql.server是我们更加方便管理服务的一个脚本(sys-v),程序加上start就可以启动了,还可以设置开机自启等,方便但是不能定制额外的控制,比如分配的内存大小等

对于单机mysql来讲,建议使用mysql.server方便管理

对于多实例(一台机器多个实例)来讲,mysqld_safe等推荐

二 关闭

(这里的/etc/init.d/mysqld 是指mysql解压目录下拷贝过去的文件cp support-files/mysql.server /etc/init.dmysqld)

启动:

/etc/init.d/mysqld start  ----->    mysqld_dafe ----->     mysqld

关闭:

/etc/init.d/mysqld stop  -----> mysqladmin -uroot -pshutdown

servive mysql stop

kill -9

#第三种为利用系统进程管理命令关闭mysql

-kill pid #<== 这里的pid 为数据库服务对应的进程号

-killall mysqld #<== 这里的mysqld 是数据库服务对应的进程名字

- pkill mysqld #<== 这里的mysqld 是数据库服务对应的进程名字

野蛮kill掉数据库案例

https://blog.51cto.com/oldboy/1431161https://blog.51cto.com/oldboy/1431172

二. mysql初始化配置文件

思考 :

1.我要启动,我的程序在哪里

2.我启动区哪里找数据

3.我启动时候的状态信息系和错误信息放在哪里

4.启动的时候给了我多少内存

5. 等等

f551b5686d0271086dd83a12d493ab77.png

针对以上问题解决方案:

1.可通过预编译的选项 也就是cmake,硬编译到编程中

2. 命令行选项 设置初始化配置

1.--skip-grant-tables

2.--skip-networking

3.--socket                 # socket文件想要生成的位置

#先关闭服务#列 mysql_safe --socket = /tmp/mysql.sock#启动实列的一个脚本 实列启动socket写到tmp目录下 后台运行

如果命令行和预编译是设置了相同参数,以命令行为为准

注意:

更改完后登陆会报错

启动时人为干预了某个参数,在连接时需要用到这些参数是

mysql -eroot -p1 -s /tmp/mysql.sock

3.初始化配置文件

配置文件的读取顺序

fe8bc116613bdbf54d437afcda470c66.png

"""/etc/my.cnf 默认第一个读取

/etc/mysql/my.cnf

$ MYSQL_HOME/my.cnf 前提是在环境变量中定义了MYSQL_HOME变量

defaults-extra-file=/tmp/a.txt 除了以上的配置文件中 额外加载外部的配置

~/.my.cnf 隐藏文件 家目录

从上到下读取"""

mysql_safe的参数 --defaults-file

如果使用 ./bin/mysqld_safe守护进程启动 mysql数据库时,使用了 --defaults-file=< 配置文件的绝对领 >> 参数,

这时只会使用这个参数指定的陪住文件,以上任何配置文件都不在读取了

mysqld_safe --defaults-file=/tmp/a.txt &

思考:

"""cmake: socket=/appliscation/mysql/tmp/mysql.sock

命令行: --socket=/tmp/mysql.sock

配置文件: /etc/my.cnf socket=/opt/mysql.sock

--defaults-file=/tmp/a.txt socket=/tmp/test.sock"""

问:

socket生成在哪里

命令行 /tmp/mysql.sock

结论:

命令行>配置文件(--defaults-file也是配置文件)>cmake

用的最多的是配置文件,建议不要设置多个配置文件,一个就够了,多了乱

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值