当前位置:Gxlcms > 数据库问题 > Centos6.5 编译安装Mysql 5.5.3.7

Centos6.5 编译安装Mysql 5.5.3.7

时间:2021-07-01 10:21:17 帮助过:9人阅读

准备依赖包

yum install gcc* c++ * bison autoconfautomakezlib*  libxml* ncurses-devellibmcrypt* libtool-ltdl-devel*

yum install cmake*

 

2、  添加mysql用户和用户组

groupaddmysql

useradd -s /sbin/nologin -g mysql

 

3、  创建数组存放目录

Mkdir–R /work/mysqlData

mysql权限

Chown–R mysql.mysql/work/mysqlData

 

4、  编译安装

解压mysql.5.5.3.7.tar.gz

Tar –xzvf mysql.5.5.3.7.tar.gz

进入mysql安装目录

Cd mysql.5.5.3.7

编译配置

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/work/mysqlData

注释

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql配置安装目录

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock设置sock存放目录

-DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci设置默认字符集

-DWITH_INNOBASE_STORAGE_ENGINE=1安装innodb存储引擎

-DWITH_READLINE=1快捷键功能

-DENABLED_LOCAL_INFILE=1允许从本地导入数据

-DMYSQL_DATADIR=/work/mysqlData数据存放目录

编译安装

make&& make install

 

Copy配置文件

       cp/usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf

mysql添加到系统服务中

cp/usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

设置mysql启动级别

chkconfig --level mysqld 2345 on

 

 

      

5,配置mysql

      

       修改数据文件存放位置,

Vi /etc/my.cnf

内容如下

 

 

[mysqld]

datadir=/work/mysqlData                                          //设置数据存放目录

socket=/tmp/mysql.sock                                      //mysql启动sock文件存放地址

user=mysql                                                           //mysql启动用户

symbolic-links=0                                                  //关闭数据分区存储

log-bin=/work/mysqlData/logs/mysql-bin     //开启bin-log日志,并设置目录

expire_logs_days = 10                                         //bin-log日志存放时间为10

#log-slow-queries = /work/mysqlData/logs/slow.log //开启慢查询日志(注释)

#long_query_time = 1                                         //慢查询日志最大时间

log-error=error.log                                              //错误日志名称,

max_connections = 500                                       //最大连接数

connect_timeout = 60                            //连接保存时间

key_buffer_size = 512M                                      //MyISAM所有缓存大小

innodb_buffer_pool_size = 1024M                      //Innodb缓存大小

myisam_sort_buffer_size = 256M                       //MyISAM排序缓存区大小

read_rnd_buffer_size = 32M                               //MySQL的随机读缓冲区大小

tmp_table_size=512M                                         //临时表最大值

max_heap_table_size=512M                              //内部临时表的最大值

back_log = 512                                                     //能暂存的连接数量

max_allowed_packet=32M                                 //

server_id = 9                                                               //mysql服务id

 

event_scheduler = ON                                         //设定服务器端运行执行计划任务

[mysqld_safe]

log_warnings=2                                                   //日志等待时间

pid-file=/var/run/mysqld/mysqld.pid                  //pid文件目录

[mysql]

 

socket=/tmp/mysql.sock                               //客户端连接sock文件地址

 

 

6、初始化数据,启动服务

/usr/local/mysql/scripts/mysql_install_db --user=mysql初始化mysql数据库。

启动mysql

servicemysql start

关闭mysql

servicemysql stop

 

7、备份工具

安装备份工具

tarzxf percona-xtrabackup-2.0.8-587.tar.gz  

cd percona-xtrabackup-2.0.8  

cp bin/innobackupex /usr/bin  

cp bin/xtrabackup* /usr/bin

       备份脚本

             

 

#!/bin/bash

 

LOG_FILE="/root/stat_data/logs/backup.log"

DATE_STR=`date ‘+%Y-%m-%d‘`

echo "" >> $LOG_FILE

echo "" >> $LOG_FILE

echo "[`date ‘+%Y-%m-%d %T‘`]  Starting backup Mysql DB " >> $LOG_FILE

echo "===============================================" >> $LOG_FILE

echo "STEP 1 : call innobackupex   [`date ‘+%Y-%m-%d %T‘`]" >> $LOG_FILE

/usr/bin/innobackupex --user=root --password=snow436 --defaults-file=/etc/my.cnf /tmp/db_backup/ >> $LOG_FILE 2>&1

 

echo "-----------------------------------------------" >> $LOG_FILE

echo "STEP 2 : call tar zcf        [`date ‘+%Y-%m-%d %T‘`]" >> $LOG_FILE

DB_DIR_NAME=`ls -d /tmp/db_backup/$DATE_STR*`

GZFILE_NAME="/work/db_backup/db_full_$DATE_STR.tar.gz"

echo "Source path is : $DB_DIR_NAME    Dest path is : $GZFILE_NAME" >> $LOG_FILE

/bin/tar zcf $GZFILE_NAME $DB_DIR_NAME >> $LOG_FILE 2>&1

 

#echo "-----------------------------------------------" >> $LOG_FILE

#echo "STEP 3 :scp to web1         [`date ‘+%Y-%m-%d %T‘`]" >> $LOG_FILE

#REMOTE_DIR_NAME="zyx@web1:/work/backup/db_full"

#echo "Source is : $GZFILE_NAME      Dest is : $REMOTE_DIR_NAME"  >> $LOG_FILE

#/usr/bin/scp $GZFILE_NAME $REMOTE_DIR_NAME  >> $LOG_FILE 2>&1

 

echo "-----------------------------------------------" >> $LOG_FILE

echo "STEP 4 : remove tmp file $DB_DIR_NAME and $GZFILE_NAME      [`date ‘+%Y-%m-%d %T‘`]" >> $LOG_FILE

rm -rf $DB_DIR_NAME >> $LOG_FILE 2>&1

#rm -f $GZFILE_NAME >>  $LOG_FILE 2>&1

echo "----------------------------------------------">> $LOG_FILE

echo "delete old data back"

 

LAST_MONTH=`date +%Y-%m-%d --date="-2 week"`

DELETE_FILE="/work/db_backup/db_full_$LAST_MONTH.tar.gz"

if [ -f $DELETE_FILE ]

then `/bin/rm -rf $DELETE_FILE`

echo "deleted $DELETE_FILE" >> $LOG_FILE

fi

 

echo "===============================================" >> $LOG_FILE

echo "Finished !!      [`date ‘+%Y-%m-%d %T‘`]" >> $LOG_FILE

Centos6.5 编译安装Mysql 5.5.3.7

标签:nis   主服务器   微软雅黑   地址   root   har   rip   系统   work   

人气教程排行