当前位置:七道奇文章资讯数据防范MySQL防范
日期:2012-03-25 23:04:00  来源:本站整理

MySQL数据库服务器初始化步骤[MySQL防范]

赞助商链接



  本文“MySQL数据库服务器初始化步骤[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

  【导读】

  文章内容中介绍的MySQL数据库服务器初始化步骤,是本人曾经在呆过的某闻名电子商务公司的工作中,摸索而总结的服务器初始化步骤,不过是按照遗留的部份内容,外加回想而重新整理成文章,供大家工作中参考.

  l 风险性操作号令被逼迫隐含重改写

  1) Shell号令rm:不管你输入的rm 背面为什么参数,城市隐形地转为 rm –i 号令履行;

  2) Shell号令cp:不管你输入的cp 背面为什么参数,城市隐形地转为 cp –i 号令履行;

  3) Shell号令mv:不管你输入的mv背面为什么参数,城市隐形地转为 mv –i 号令履行;

  改正每个操作系统级别帐号默许配置的躲藏文件bash_profile的内容,实现上述3个号令的隐形改正,同时也大概增添途径和提醒等其他信息,具体的具体信息可以参考文章设置Linux系统的环境变量方法,削减悲剧操作的发生.

  l 服务器名称

  主机名称要能包含三部份信息:服务器所在的机房名称、利用名称、集群中的代号.别的,为便利统一管理,与其他兄弟部门交流和合作,改变过去自成章法的做法,而拟定严峻的格局要求,三部份的衔接符合统一为中划线“-”,举例阐明:xy-brmms-db1a、xy-brmms-db1b、xy-brmms- db2a、xy-brmms-db2b….

  此中,db1a和db1b表示一对互为主备的主从复制关系,集群中有多台服务器支持数据服务,则最后二位的数字和字母会呼应改变而表现出来.

  l ITIL流程单提交

  1) 域名申请:若利用程序拜候数据库服务器的方法,是通过域名而非IP地址的时刻,则需求提交ITIL流程单,并且指定为SA部门的***同事,普通会在2个小时内处理,故需求提早申请预备好;

  2) 服务器的IP地址变更:若想更改数据库服务器的IP地址,包含做VIP用处的IP地址,则需求提交ITIL流程单,并且指定为网络部门的***同事,此需求普通会及时呼应,但仍然倡议提早填写;

  3) 服务器拜候安全列表增添:待服务器全部的配置工作都完成之后,通过向安全部门提交ITIL流程单方法,要求描写清楚:服务器的IP地址信息(备注:需求用到VIP或域名的,也需求一并描写清楚),主机的名称,那个组的成员或个人需求拜候此服务器,并且描写清楚各自需求拥有的权限,以及默许登录的帐号名称(普通默许为:admin);

  l MySQL软件包安装

  鉴于我们利用MySQL开源软件的社区版本产品,其测试和考证历程主要依靠社区的用户和开源奉献者完成,即便商业产品也不能盲目利用最新公布的版本,别的利用的版本必须经过我们做过一定量针对性的测试,以及开辟环境或性能测试环境考证过,为此举荐利用版本:5.1.34、5.1.36、5.1.40,若是想利用Plugin-innodb,则举荐利用版本:mysql-5.1.48,暂不举荐生产环境利用版本:mysql 5.5.*系列.

  以mysql 5.1.40版本为例,安装的软件包为:

  MySQL-server-community-5.1.40-0.rhel5.x86_64.rpm

  MySQL-shared-community-5.1.40-0.rhel5.x86_64.rpm

  MySQL-client-community-5.1.40-0.rhel5.x86_64.rpm

  MySQL-devel-community-5.1.40-0.rhel5.x86_64.rpm

  l MySQL数据库的初始化

  1) 主备服务器都优先增添用于复制的帐号

  GRANT REPLICATION SLAVE ON *.* TO ‘repl’@'%’ IDENTIFIED BY’XXXXXXXXXXXXXXXXXX’;

  2) 待主主复制搭建完成后,任选一台主机履行其他初始化操作

  初始化root帐号的信息:

  DELETE FROM mysql.user WHERE user=” OR host=”;

  UPDATE mysql.user SET password=PASSWORD(‘XXXXXXXXXXXXXXXX’) WHERE user=’root’;

  FLUSH PRIVILEGES;

  成立用于监控的数据库信息:

  CREATE DATABASE `monitor` CHARACTER SET utf8 COLLATE utf8_general_ci;

  USE monitor;

  CREATE TABLE `xdual` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `x` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,

  PRIMARY KEY (`id`)

  ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

  INSERT INTO xdual(x) VALUES(NOW());

  成立用于管理、监控和本地备份的帐号信息:

  GRANT SUPER,PROCESS,FILE,SELECT ON *.* TO ‘admin’@'localhost’ IDENTIFIED BY’XXXXXXXXXXXXXXXXX’;

  GRANT UPDATE ON monitor.* TO ‘admin’@'localhost’;

  成立用于只读利用场景的帐号(比方:数据仓库):

  GRANT SELECT ON stanley.* TO ‘rnd’@'%’ IDENTIFIED BY’XXXXXXXXXXXXXXXX’;

  增添利用程序和DBA操作对应库的帐号信息:

  GRANT SELECT,INSERT,UPDATE,DELETE ON stanley.* TO ‘stanley’@'%’ IDENTIFIED BY’XXXXXXXX’;

  GRANT ALL ON stanley.* TO ‘stanley’@'localhost’ IDENTIFIED BY’XXXXXXXXXXXXXXXX’;

  备注:

  DBA人员拜候mysql数据库服务器完成具体工作时,必须尽大概利用对应权限的帐号,而不能一味利用最高权限帐号root,固然此举大概带来本钱上升,却可以削减误操作事件的发生概率,以及降低误操作影响范围.

  l MySQL复制搭建

  因新安装的数据库服务器,还未跑任何利用,只是2台主机都成立了一个一样属性的数据库帐号信息罢了,为此没有必要履行数据库备份的方法用于搭建复制,简单描写以下(备注:以xy-brmms-db1a和xy-brmms-db1b为例):

  (1) 主机xy-brmms-db1a上履行SQL号令:SHOW MASTER STATUS;

  (2) 主机xy-brmms-db1b上履行SQL号令:

  CHANGE MASTER TO

  master_host=’172.22.32.88′,master_user=’repl’,master_password=’XXXXXXXXXXXXXXXX’,

  master_log_file=’mysql-bin.000006′,master_log_pos=2256;

  START SLAVE;

  (3) 主机xy-brmms-db1b上履行SQL号令:SHOW SLAVE STATUS;按照输出信息判断能否xy-brmms-db1a->xy-brmms-db1b方向的复制能否成功;

  (4) 通过上述3个步骤完成xy-brmms-db1a->xy-brmms-db1b的复制,接下来反复上述3个步骤,替换相关信息,能完成xy-brmms-db1b->xy-brmms-db1a的复制;

  备注:

  MySQL生产环境大概碰到的场景,需求搭建复制的步骤及具体办法,可以参考文章生产环境搭建MySQL复制的教程.

  l 操作系统需求增添的帐号

  按照实际拜候及利用的需求,服务器操作系统拜候的帐号,每台主机上有 3-5个帐号,并且每个帐号城市有其单独对应的密码.关于一个利用集群中,全部数据库服务器的帐号密码都相同,其他情形下差别服务器操作系统中的帐号名称相同,但是密码必定差别.

  为了避免用户和组ID的混乱,对用户名称的id和用户所属组id举行统一的规定:

  admin用户的uid 必须为:501

  admin用户组的gid 必须为:501

  对应shell号令为:

  groupadd -g 501 admin

  useradd -c “dragoon and other software owner” -g admin -u 501 admin

  mysql用户的uid 必须为:601

  mysql用户组的gid 必须为:601

  对应shell号令为:

  groupadd -g 601 mysql

  useradd -c “mysql software owner” -g mysql -u 601 mysql

  备注:

  利用nagios作为监控手段的情形下,还会成立一个名称为nagios,群组名为nagios,ID号同为401的用户及用户组,别的还有一些其他的帐号,都是近似的方法.

  l 监控配置

  为了加快布置的速度,以及布置工作的简易,Dragoon系统计划之初就但愿做到不需求改正任何操作脚本,只需求成立必要的目录,并且把全部通用性的脚本当到对应目录下,然后启动agent程序便可完成主机信息的自动注册,然后通过操作界面完成便可.

  我们特地通过一台公用型的服务器搭建了监控样机,安排了通用性的脚本程序及文件,可以此后服务器上scp文件到需求的主机上,监控配置界面也可以勾选模版为此服务器,便可简单完成监控配置的整个历程.

  成立用于存放mysql拜候帐号配置信息:

  mkdir -p /home/mysql/admin/conf/

  成立监控帐号帐号文件:

  vi /home/mysql/admin/conf/.dragoon_mysql_ps.conf

  向文件增添以下内容:

  #dragoon connect to mysql’s user and password

  USER=admin

  PASS=XXXXXXXXXXXXXXXX

  SOCKET=/data/mysqldata/sock/mysql.sock

  最后改正文件目录及属性:

  chown -R mysql:mysql /home/mysql/

  成立用于存放通用性及文件的目录:

  mkdir -p /usr/alisys/dragoon

  mkdir /usr/alisys/dragoon/bin

  mkdir /usr/alisys/dragoon/libexec

  mkdir /usr/alisys/dragoon/var

  mkdir -p /home/ops/appops/noc/log

  mkdir -p /home/ops/appops/noc/tmp

  最后改正目录及文件属性:

  chown -R admin:admin /home/ops

  从Linux环境监控样机上拷贝相关脚本及文件:

  scp root@172.22.7.155:/usr/alisys/dragoon/bin/* /usr/alisys/dragoon/bin/

  scp root@172.22.7.155:/usr/alisys/dragoon/libexec/* /usr/alisys/dragoon/libexec/

  scp root@172.22.7.155:/usr/alisys/dragoon/DragoonInit /usr/alisys/dragoon/DragoonInit

  scp root@172.22.7.155:/usr/alisys/dragoon/dragoon_operate_alert.sh /usr/alisys/dragoon/dragoon_operate_alert.sh

  增添系统启动项:

  cp /usr/alisys/dragoon/DragoonInit /etc/rc.d/init.d/DragoonAgent

  chkconfig –add DragoonAgent #(chkconfig –list DragoonAgent 查抄能否正常增添)

  监控服务启动号令:

  /etc/init.d/DragoonAgent start OR /etc/init.d/DragoonAgent restart

  监控服务关闭号令:

  /etc/init.d/DragoonAgent stop

  完成主机上全部监控配置及启动agent程序的操作之后,接下来可以到Dragoon系统网站页面,搜索主机名称便可找到,并且改正相关属性,比方所属的群组等,并且选中模版监控机,还可以再增添新的监控项目,最后点击肯定即完成全部的配置历程,系统将开始按法则采集相关数据.

  【总结】

  非采取数据层中间件的数据库服务器,主如果借助MySQL主主复制,以及加上Heartbeat供应的VIP服务实现数据服务的高可用性,当时主要利用** 版本,而最新的版本跟其差别甚大,以及介绍起来文章篇幅太长,故未触及,后续再单独介绍Heartbeat的安装、配置和保护.

  Dragoon监控平台未正式上线之前,我们一向利用nagios作为监控报警的工具,mrtg实现服务器及数据库的性能数据展示,以及有非常多的脚本需求用到及配置,比方logwatch用于监控主机上产生的日记信息,然后及时邮件和短信的方法报警.


  以上是“MySQL数据库服务器初始化步骤[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Windows 搭配 IIS7 PHP MySQL 环境
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • mysql数据库插入速度和读取速度的调整记录
  • MySQL Order By索引优化办法
  • MySQL Order By用法分享
  • mysql #1062 –Duplicate entry ''1'' for key ''PRIMARY''
  • MySQL Order By Rand()效率解析
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .