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/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学习之旅。
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学习之旅。
相关文章推荐
- CentOS 7源码编译安装PHP5.6和Nginx1.7.9及MySQL(搭建LNMP环境)
- CentOS 7下源码安装MySQL 5.6
- CentOS 6.3下MySQL 5.6源码安装
- centos6源码编译安装MySQL5.6
- centos 6.4从源码安装mysql 5.6笔记
- centos6.7环境上源码安装mysql5.6
- MySQL源码编译安装(CentOS6.7 + MySql5.6)
- centos源码安装mysql5.6
- 分布式架构学习之:MySQL源码编译安装(CentOS-6.7+MySQL-5.6)
- CentOS 6.3下MySQL 5.6源码安装
- CentOS 7下源码安装MySQL 5.6
- CentOS 7下源码安装MySQL 5.6
- CentOS 6.3下MySQL 5.6源码安装
- CentOS 7下源码安装MySQL 5.6
- 大环境下MySQL5.6源码安装实战一步步教你 CentOS6.5_64bit下编译安装MySQL-5.6.23@guoyJoe
- mysql5.6 源码编译安装 基于centOS6.8 Basic Server
- 分布式架构学习之:033--MySQL源码编译安装(CentOS-6.7+MySQL-5.6)
- centos7下源码安装mysql5.6
- centos 6.5_64bit最小化安装环境下源码安装mysql-5.6
- centos6.2 安装Mysql5.6