官方编译好的二进制mysql_安装编译好的二进制mysql并更改路径

本文档详细介绍了如何在Linux CentOS6系统上,将MySQL5.6二进制源码包安装到自定义路径下。步骤包括创建安装目录、解压源码、用户创建、权限设置、配置文件修改、数据库初始化、启动和停止MySQL服务,以及处理可能出现的问题。此外,还提供了自定义配置和系统服务脚本的创建方法。
摘要由CSDN通过智能技术生成

1.系统:linux centos 6

2.数据库:mysql 5.6 二进制源码包

说明

Mysql二进制源码包,不再需要进行编译,直接拷/usr/local/mysql即可,

因为默认已经在对源码编译后指定到该目录。现在需要更改这个路径,及拷

贝到其他自定义目录下来启动mysql,需要一系列工作。

安装

1、创建自定义安装目录

mkdir /export1/server/mysql –p

2、解压缩源码包

tar zxvf mysql-5.6.10-linux-glibc2.5-x86_64.tar.gz

3、将mysql-5.6.10-linux-glibc2.5-x86_64目录下所有文件拷贝到/export1/server/mysql下

4、创建mysql用户

useradd mysql

5、权限更改

chown mysql:mysql /export1 –R

6、拷贝配置文件

cp /export1/server/mysql/support-files/my-medium.cnf

/etc/my.cnf

如果没有,需要在其他地方拷贝一份

注意:my.cnf文件中的路径,如果是/usr/local/mysql,则将其替换为/export1/server/mysql

7、初始化数据库

cd /export1/server/mysql

./scripts/mysql_install_db –user=mysql

注意:指定mysql用户很重要,后面会说明

如果遇到一些权限问题导致初始化没有成功,很有可能是由于:

1)/export1  base目录权限造成

2)可以尝试指定basedir和datadir选项

--basedir=/export1/server/mysql

--datadir=/export1/server/mysql/data

8、启动mysql后台进程

./bin/mysqld_safe –user=mysql &

如果报错,可以尝试修改./bin/mysqld_safe中内容用/export1/server/mysql替换/usr/local/mysql

当提示如下:

Starting mysqld daemon

with databases from /export1/server/mysql/data

说明启动正常这时回车或者ctrl+c退出即可。

如果提示:

标识进程已死,台进程没有启动,这时可以尝试利用:

1)初始化数据库,指定basedir和datadir,也可以在my.cnf中配置

2)具体可以看error日志,找到错误

9、后台进程成功启动后,可以登录数据库

./bin/mysql

如果提示错误:

error 2002(HY000):Cant't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'

这个错误表示找不到sock文件,默认mysql会去找sock文件

/var/lib/mysql/mysql.sock,我们可以更改为其他的路径:

如:/tmp/mysql.sock或者/export1/server/mysql/mysql.sock等,

但是该目录要有mysql读写权限。

10、此时可以正常登录

./bin/mysql

11、停止数据库

我们可以利用以下方式停止数据库

1)./bin/mysqladmin shutdown

2)ps –A | grep mysql杀进程

3)利用系统服务脚本,后面说明配置过程

12、创建系统服务脚本

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

替换脚本中的路径将/usr/local替换为/export1/server

测试利用/etc/inti.d/mysqld停止、启动数据库

添加系统服务:

chmod 700 /etc/init.d/mysqldchkconfig --add mysqld

chkconfig --level 2345 mysqld on

其他问题

退出登录,停止数据库,在启动后台进程,这时如果报错:

看具体error log:

提示:

/export1/server/mysql/bin/mysqld:

File '/export1/server/mysql/logbin/mysql-bin.index'not found (Errcode: 13 -

Permission denied)

2013-02-22 14:31:44 2914 [ERROR] Aborting

在具体看下binlog日志权限,发现所属人和所属组变为root;

说明在初始化数据库时没有指定--user=mysql,导致新创建binlog日

志文件为root创建,mysql不可读;

更改logbin目录及其下文件为mysql:mysql;

再重新初始化mysql启动mysql发现正常;

安装脚本参考

#!/bin/bash

#===============================================================

#准备工作

#1、拷贝mysql-5.6.10-linux-glibc2.5-x86_64.tar.gz到机器

#2、拷贝mysql配置文件到/etc

#===============================================================

#解压缩mysql二进制源码包到制定指定目录,可自定义目录

tar zxvf

/software/mysql-5.6.10-linux-glibc2.5-x86_64.tar.gz -C /software

#创建自定义mysql存放目录

mkdir /export1/server/mysql -p

#拷贝解压好的mysql源码包文件到自定义mysql目录

cp -a

/software/mysql-5.6.10-linux-glibc2.5-x86_64/* /export1/server/mysql

#创建mysql用户

useradd mysql

#更改自定义mysql目录权限所属人和所属组

chown mysql:mysql /export1 -R

#拷贝mysql配置文件,并修改路径

rm -rf /etc/my.cnf

cp /etc/my.cnf.bak /etc/my.cnf

vi /etc/my.cnf << EOF

:%s#/usr/local#/export1/server#g

:%s#/var/lib#/export1/server#g

:wq

EOF

#进入自定义mysql目录下

cd /export1/server/mysql

#初始化mysql数据库,注意指定basedir和datadir

./scripts/mysql_install_db --user=mysql

--basedir=/export1/server/mysql --datadir=/export1/server/mysql/data

#创建mysql启动、停止等脚本文件,并修改文件内容中的路径

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

vi /etc/init.d/mysqld << EOF

:%s#/usr/local#/export1/server#g

:wq

EOF

chmod 700 /etc/init.d/mysqld

chkconfig --add mysqld

chkconfig

--level 2345 mysqld on

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值