数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

MYSQL服务维护及应用设计笔记[1]


发布日期:2021年09月09日
 
MYSQL服务维护及应用设计笔记[1]
以下是使用MYSQL服务的一些经验主要从以下几个方面考虑的MYSQL服务规划设计

MYSQL服务的安装/配置的通用性

系统的升级和数据迁移方便性

备份和系统快速恢复

MYSQL服务器的规划

为了以后维护升级备份的方便和数据的安全性最好将MYSQL程序文件和数据分别安装在不同的硬件

/

/usr <== 操作系统 }==> 硬盘

/home/mysql <== mysql应用程序

/data/app_/ <== 应用数据和脚本 }==> 硬盘

/data/app_/

/data/app_/

mysql服务的安装和服务的启动

MYSQL一般使用当前STABLE的版本尽量不使用withcharset=选项我感觉withcharset只在按字母排序的时候才有用这些选项会对数据的迁移带来很多麻烦

configure prefix=/home/mysql

make

make install

服务的启动和停止

复制缺省的mysql/var/mysql到 /data/app_/目录下

MYSQLD的启动脚本

start_mysqlsh

#!/bin/sh

rundir=`dirname $`

echo $rundir

/home/mysql/bin/safe_mysqld user=mysql pidfile=$rundir/mysqlpid datadir=$rundir/var $@\

O max_connections= O wait_timeout= O key_buffer=M port= socket=$rundir/mysqlsock &

注释

pidfile=$rundir/mysqlpid socket=$rundir/mysqlsock datadir=$rundir/var

目的都是将相应数据和应用临时文件放在一起

O 后面一般是服务器启动全局变量优化参数有时候需要根据具体应用调整

port: 不同的应用使用PORT参数分布到不同的服务上去一个服务可以提供的连接数一般是MYSQL服务的主要瓶颈

修改不同的服务到不同的端口后在rclocal文件中加入

/data/app_/start_mysqlsh

/data/app_/start_mysqlsh

/data/app_/start_mysqlsh

注意必须写全路径

MYSQLD的停止脚本stop_mysqlsh

#!/bin/sh

rundir=`dirname $`

echo $rundir

/home/mysql/bin/mysqladmin u mysql S$rundir/mysqlsock shutdown

使用这个脚本的好处在于

多个服务启动只需要修改脚本中的port=参数单个目录下的数据和服务脚本都是可以独立打包的

所有服务相应文件都位于/data/app_/目录下比如mysqlpid mysqlsock当一台服务器上启动多个服务时多个服务不会互相影响但都放到缺省的/tmp/下则有可能被其他应用误删

当硬盘出问题以后直接将硬盘放到一台装好MYSQL的服务器上就可以立刻恢复服务(如果放到mycnf里则还需要备份相应的配置文件)

服务启动后/data/app_/下相应的文件和目录分布如下

/data/app_/

start_mysqlsh 服务启动脚本

stop_mysqlsh 服务停止脚本

mysqlpid 服务的进程ID

mysqlsock 服务的SOCK

[] []

               

上一篇:MYSQL服务维护及应用设计笔记[2]

下一篇:数据库相关:详细讲解Linux环境下MySQL 5.1安装步骤[2]