linux下, 一切都变得即熟悉又陌生, 之前可以做到的, 一下子又做不到了
经过一轮折腾, 又做到了, 生命就是这么回事, 叹...
mysql5.6.28
--------------------
使用rpm包安装之前有讲过, 就不讲了, 这里讲手动绿色大法
需要解决的问题,
1.安装
2.跑起来
3.做成服务(开机自启)
1.安装
--------------------
首先, 去官网下载二制版, 解压即就是了
上传到linux目录, 我是丢在
/usr/mysql/mysql5.6.28
为了方便打字, 建了个软链接
/usr/mysql/mysql5
如图
好了, 安装就好了, 绿色大法好啊
2.跑起来
--------------------
这里讲一下思路, 官网的做法是, 在linux系统里使用mysql账号启动的, 所以, 要建立data目录, 并把权限赋给mysql账号, 这里我是使用root账号,
而且, 绿色版解压后是没有默认 mysql 和 proformance_schema 这2个基础数据库的
如图, 右边是我手动生成好并已经在运行的效果
这里说一下win版和linux版的区别, win版做成服务后, 每次启动服务时都会检查这2个数据库, 如果没有, 会自动建立, 但linux则需要你手动做这事, 跑一下
./mysql_install_db --basedir=/usr/mysql/mysql5.6.28 --datadir=/usr/mysql/mysql5.6.28/data_test
如图
跑完后, 多了一个data_test (演示用, 因为我已经建立了data)
默认数据库有了, 现在需要跑起来, 主要是看
support-files/mysql.server
其中看脚本折腾的过程略过(很痛苦)...
经过返璞归真后, 得出这么一条终极命令, 在bin目录下
./mysqld_safe --defaults-file=my.cnf --user=root
执行, ok, 如图
然后, mysql数据库会启动 mysqld_safe和 mysqld 这么2条进程
mysqld_safe为守护进程
mysqld 为常规进程
使用 kill -9 pid(mysqld), mysqld又会马上再起来
但使用 kill pid(mysqld), 则可以完美的关掉2个进程
为什么我会知道? mysql_server告诉我的啊, 它就是这么干的, 又想起啃脚本的苦逼经历
3.做成服务(开机自启)
--------------------
有了启动, 有了关闭, 写服务就好办了
linux的基础知识
使用runlevel, 确定当前所在的runlevel(好像很废话)
写脚本 mysql5, 支持start stop这2参数, 具体在附件(mysql5.zip)里
扔 /etc/init.d 里, 再在 /etc/rc3.d/S99mysql5 里建立软链接指向 /etc/init.d/mysql5,
S99mysql5, S代表开机启动, 99代表优先级(启动时执行顺序由低到高)
完工
最后, 其实还有未完善的, 这个自己写的服务, 并不支持chkconfig, 以后再折腾吧