您的位置:首页 > 运维架构 > Linux

MySQL 5.6 在CentOS 6.2 源码安装

2013-10-13 23:56 701 查看
MySQL的常见的安装方式,一般是通过RPM包的形式安装,还有就是通过安装Linux时,一并把MySQL安装好,今天和大家介绍一下,如果用源代码的方式,在非
root用户安装MySQL。具体安装环境如下:
操作系统:CentOS 6.2
MySQL版本:MySQL 5.6

安装前的规划工作:

mysql安装在指定的用户下,本文是mysql用户。
数据库的安装目录: /mysql/server
 
下面开始我们MYSQL安装过程 。
 
一、安装前的准备工作
在安装MySQL前,先要检查MySQL依赖是否存在。
1、检查GCC是否已经安装。检查方法: rpm –qa gcc
如果没有安装,则需要安装GCC,   centos 安装GCC方式: yum install gcc
2、检查cmake 是否安装。检查方法:rpm –qa cmake
如果未安装,先安装cmake , yum install cmake
注: 如果当前没有centos 安装盘,或者Linux不能上网,只能上网下载cmake的rpm 包,gcc也是如此。
3、其它依赖包的安装,除了gcc,cmake 以外,mysql 还会依赖以下包:
bison 
gcc-c++
autoconf
automake
zlib*
libxml*
ncurses-devel
libtool-ltdl-devel
可以用yum install 包名,分别安装,也可以一次安装完,命令格式:
yum install bison,gcc-c++ autoconf  zlib*  libxml* ncurses-devel  libtool-ltdl-devel
4、MySQL官网下载源码
去官司网www.mysql.com 下载MySQL 源码。
5、创建用户和用户组
一般安装MySQL前会创建用户,创建用户主要是为了方便管理。
groupadd mysql  #创建mysql 用户组
useradd –g mysql mysql –d /mysql   #创建Mysql用户,并指定所属的用户组。并指定mysql用户的主目录。
passwd mysql   #设置用户密码
6、解压源码
tar -xzvf mysql-5.6.14.tar.gz

7、编译前配置 
在解压后的目录中执行以下命令,配置编译的基本信息:
[mysql@master mysql-5.6.14]$ cmake CMakeLists.txt \
> -DCMAKE_INSTALL_PREFIX=/mysql/server \
> -DDEFAULT_CHARSET=utf8 \
> -DDEFAULT_COLLATION=utf8_general_ci \
> -DWITH_MYISAM_STORAGE_ENGINE=1 \
> -DWITH_INNOBASE_STORAGE_ENGINE=1 \
> -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
> -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
> -DWITH_MEMORY_STORAGE_ENGINE=1 \
> -DWITH_READLINE=1 \
> -DENABLED_LOCAL_INFILE=1 \
选项介绍:
CMAKE_INSTALL_PREFIX   指定安装MySQL的基准目录,这个一定要指定,否则会安装到默认的/usr/locale 这个目录。在日常的工作中
我们可能没有root帐号的权限,有时我们更愿意安装到自己指定的目录。

DEFAULT_CHARSET  指定字符集 ;
DWITH_MYISAM_STORAGE_ENGINE   指定存储引擎,设为1时,表示在编译时构建该存储引擎,存储引擎需要在编译时指定。
 
8、正式编译源代码:
[mysql@master mysql-5.6.14]$ make
注意:MYSQL源码较多,估计要20分钟左右才编译完成。
9、安装
    [mysql@master mysql-5.6.14]$ make install
    如果 gmake install 不加任何参数,安装时,会安装到cmake 配置时指定的目录,如我们上文的配置目录/mysql/server 。在此时也可以指定其它目录,但
    需要指定一个参数 :DESTDIR  。
    执行命令如下: make install  DESDIR="/home/mysql/bin”
   指定了DESDIR参数后,由于在cmake配置的安装路径是/mysql/server, 那么此时安装的完整目录就是:/home/mysql/bin/mysql/server
   到些,MySQL应用就基本安装完成。
10、MySQL服务器配置
      安装好的目录结构如下图:



初始化系统表
切换到MYSQL安装目录:cd /mysql/server
执行如下命令:[mysql@master server]$ ./scripts/mysql_install_db --user=mysql --basedir=/mysql/server/ --datadir=/mysql/server/data --defaults-file=/mysql/server/my.cnf





其中有几个参数需要说明一下:
--user  指定MYSQL的用户
--basedir  指定MYSQL安装的基准目录,本演示的目录为/mysql/server
--datadir  指定MYSQL的数据文件目录
--defaults-file 批定的MYSQL 的my.cnf文件位置,本演示设定为:/mysql/server/my.cnf
 
配置my.cnf 文件
my.cnf 文件位置位于/mysql/server 目录下。



如上图,my.cnf基本配置,需要指定几个配置项:
basedir   即MYSQL的基准目录。示例: basedir=/mysql/server
datadir   即MYSQL的数据文件存文目录。 示例:datadir=/mysql/server/data
port       即MYSQL的网络监听端口号 。
server_id    如果MYSQL需要设置主从,需要指定一个值。当前我们不设置主从。
socket     MYSQL本地SOCKET 通信目录。
log-error  该配置主要为mysqld_safe脚本使用,指定MYSQL的错误日志。示例: /mysql/server/var/log/mysqld.log   在这需要注意一下,由于默认的MYSQL目录没有var/log  这个子目录,需要手工创建,在MYSQL的BASE目录,即/mysql/server ,执行mkdir –p var/log 命令。
pid-file    进程号。/home/server/var/mysqld.pid
mysqld  指定mysqld_safe脚本用到哪个程序启动MYSQL  
本教程只说明基本几个参数,在后续教程中我们会详细介绍my.cnf的使用。
 
11、启动数据库
在linux/unix 启动数据库建议用mysqld_safe 脚本启动。
[mysql@master server]$ ./bin/mysqld_safe &




查看MYSQL进程是否存在:
ps –ef | grep mysql
执行结果如下图:



12、设置MYSQL数据库的安全信息
进入/mysql/server 目录,执行以下命令:
[mysql@master server]$ ./bin/mysql_secure_installation
如果执行结果如下图所示,这是因为mysql_secure_installtion 脚本有一个bug ,不会读取my.cnf 的socket的通信配置。简单的方案是:
ln –s /mysql/server/var/mysql.sock /tmp/mysql.sock  
用上面命令创建一个 link



创建完link 再次就可以执行,按英文提示即可,主要是设置root密码,是否允许root远程访问。
 
13、访问MYSQL数据库服务器
[mysql@master server]$ ./bin/mysql -h localhost -P 3307 -u root -p




看到上述画面,MYSQL确定安装完成。
在这里需要注意一下,如果此处也提示找到/tmp/mysql.sock 错误,可以在my.cnf添加一行配置即可,具体如下:
[mysql]
socket=/mysql/server/var/mysql.sock
port=3306
14、关闭mysql数据库
执行该命令即可:
[mysql@master server]$ ./bin/mysqladmin shutdown -p





至此,MYSQL数据库全部安装与配置完成,接下来,我们就可以进行MYSQL学习之旅。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: