Welcome 微信登录

首页 / 数据库 / MySQL / MySQL主从搭建实现

MySQL是应用广泛的关系型数据库,当数据规模逐渐扩大,并且重要性不断提高的情况下,单数据库的可靠性和性能受到严重挑战,所以就会有了主从,读写分离等需求了。首先在2台linux下安装mysql,最好是内网机器,可以用内网网卡做主从同步,网络质量和安全都可以得到保证。1、安装一些常用包:yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-serversyum -y install perl perl-URI perl-DBI perl-String newt-perl 2、下载并安装mysqlwget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.3-m3.tar.gz/from/http://mysql.he.net/ tar -zxf mysql-5.5.3-m3.tar.gz3、编译安装mysqlcd mysql-5.5.3-m3./configure --prefix=/usr/local/mysql --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables --with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=partition,innobase,myisammrg &&make &&make install 4、建立mysql用户和数据文件夹等 /usr/sbin/groupadd mysql /usr/sbin/useradd -g mysql mysql chown -R mysql:mysql /usr/local/mysql
mkdir -p /home/mysql/data mkdir -p /home/mysql/binlog
mkdir -p /home/mysql/relaylog chown -R mysql:mysql /home/mysql/* 5、初始化数据库 /usr/local/mysql/bin/mysql_install_db --basedir=/usr/local/mysql --datadir=/home/mysql/data --user=mysql 6、建立mysql启动 关闭脚本:vim /etc/init.d/mysql 如下:
  1. #!/bin/sh   
  2.   
  3.  mysql_port=3306  
  4.  mysql_username="root" //这里要修改   
  5.  mysql_password="12345" //这里要修改   
  6.  function_start_mysql()    
  7. {    
  8.      printf "Starting MySQL... "    
  9.      /bin/sh /usr/local/mysql/bin/mysqld_safe --defaults-file=/home/mysql/my.cnf 2>&1 > /dev/null &    
  10. }    
  11.  function_stop_mysql()    
  12. {    
  13.      printf "Stoping MySQL... "    
  14.      /usr/local/mysql/bin/mysqladmin -u ${mysql_username} -p${mysql_password} -S /tmp/mysql.sock shutdown    
  15. }    
  16.  function_restart_mysql()    
  17. {    
  18.      printf "Restarting MySQL... "    
  19.       function_stop_mysql   
  20.      sleep 5  
  21.       function_start_mysql   
  22. }    
  23.  function_kill_mysql()    
  24. {    
  25.      kill -9 $(ps -ef |grep "bin/mysqld_safe"| grep ${mysql_port} | awk "{printf $2}")    
  26.      kill -9 $(ps -ef |grep "libexec/mysqld" | grep ${mysql_port} | awk "{printf $2}")    
  27. }    
  28. if [ "$1" = "start" ]; then   
  29.       function_start_mysql   
  30.  elif [ "$1" = "stop" ]; then   
  31.       function_stop_mysql   
  32.  elif [ "$1" = "restart" ]; then   
  33.       function_restart_mysql   
  34.  elif [ "$1" = "kill" ]; then   
  35.       function_kill_mysql   
  36. else    
  37.      printf "Usage: /home/mysql/mysql {start;stop;restart;kill} "    
  38.  fi  
  • 1
  • 2
  • 3
  • 下一页
在SQL PLUS中调试Oracle存储过程MySQL 有关“InnoDB Error ib_logfile0 of different size”错误相关资讯      MySQL数据库教程 
  • MySQL 处理非法数据  (04/09/2013 08:06:28)
  • MySQL关于timestamp和mysqldump的  (12/16/2012 13:25:41)
  • MySQL保证数据完整性  (12/16/2012 12:00:35)
  • ERROR 1130: mysql 1130连接错误的  (12/16/2012 13:29:08)
  • MySQL数据库教程:管理数据库和表(  (12/16/2012 12:47:02)
  • MySQL快速插入大批量数据存储过程  (11/05/2012 19:04:04)
本文评论 查看全部评论 (0)
表情: 姓名: 字数