CetOS6.5下编译安装Mysql5.6.16

  • 首先检查是否安装了mysql

rpm -qa | grep -i mysql
#如果安装了先卸载旧的版本
yum remove -y mysql mysql-server mysql-libs mysql-devel(具体根据列出的列表将mysql相关的项都卸载了)

  • 删除所有mysql相关的残留文件,可用find / -name mysql查找所有与mysql相关的目录

rm -rf /var/lib64/mysql

rm -rf /etc/my.cnf

rm -rf /var/lib/mysql(重要,如不删除重新安装后密码还是之前的密码不会重新初始化)

  • 安装依赖的工具和库

yum install -y gcc gcc-c++ ncurses-devel perl

  • 下载cmake编译包并安装

wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz

tar -xzvf cmake-2.8.10.2.tar.gz

cd cmake-2.8.10.2

./bootstrap ; make ; make install

cd ~

  • 设置mysql用户和用户组

groupadd mysql

useradd -r -g mysql mysql

  • 新建mysql所需要的目录

mkdir -p /usr/local/mysql  #新建mysql安装目录

mkdir -p /data/mysql  #新建mysql数据库数据文件目录

  • 下载MySQL源码包并解压

wget cdn.mysql.com/archives/mysql-5.6/mysql-5.6.16.tar.gz

tar -zxv -f mysql-5.6.16.tar.gz

cd mysql-5.6.16

  • 编译安装MySQL

从mysql5.5起,mysql源码安装开始使用cmake了,设置源码编译配置脚本。

-DCMAKE_INSTALL_PREFIX=dir_name 设置mysql安装目录
-DMYSQL_UNIX_ADDR=file_name 设置监听套接字路径,这必须是一个绝对路径名。默认为/tmp/mysql.sock
-DDEFAULT_CHARSET=charset_name 设置服务器的字符集。
缺省情况下,MySQL使用latin1的(CP1252西欧)字符集。cmake/character_sets.cmake文件包含允许的字符集名称列表。
-DDEFAULT_COLLATION=collation_name 设置服务器的排序规则。
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1
存储引擎选项:

MyISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。

静态编译一个存储引擎到服务器,使用-DWITH_engine_STORAGE_ENGINE= 1

可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB),
PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)

-DMYSQL_DATADIR=dir_name 设置mysql数据库文件目录
-DMYSQL_TCP_PORT=port_num 设置mysql服务器监听端口,默认为3306
-DENABLE_DOWNLOADS=bool 是否要下载可选的文件。例如,启用此选项(设置为1),cmake将下载谷歌所使用的测试套件运行单元测试。

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/mysql -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1

注:重新运行配置,需要删除CMakeCache.txt文件

rm -rf CMakeCache.txt

make  #编译源码

make install  #安装

  • 修改mysql目录所有者和组

chown -R mysql:mysql /usr/local/mysql ; chown -R mysql:mysql /data/mysql

  • 初始化mysql数据库

cd /usr/local/mysql

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

  • 复制mysql服务启动配置文件

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

  • 复制mysql服务启动脚本及加入PATH路径

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

vim /etc/profile增加如下内容:

PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH

export PATH

source /etc/profile  #使配置文件立即生效

  • 启动mysql服务并加入开机自启动

service mysqld start

chkconfig mysqld on

  • 检查mysql服务是否启动

netstat -lnp | grep 3306

  • 修改MySQL用户root的密码

/usr/local/mysql/bin/mysql_secure_installation  #运行安全设置脚本,修改MySQL用户root的密码,同时可禁止root远程连接,移除test数据库和匿名用户

  • 可能会出现的错误

问题:

Starting MySQL..The server quit without updating PID file ([FAILED]/mysql/Server03.mylinux.com.pid).

解决:

修改/etc/my.cnf 中datadir,指向正确的mysql数据库文件目录

问题:

ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2)

解决:

新建一个链接或在mysql中加入-S参数,直接指出mysql.sock位置。

ln -s /usr/local/mysql/data/mysql.sock /tmp/mysql.sock

/usr/local/mysql/bin/mysql -u root -S /usr/local/mysql/data/mysql.sock

问题:

-bash:mysql:command not found

解决:

因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时,

系统在/usr/bin下面查此命令,所以找不到了

解决办法是:

ln -s /usr/local/mysql/bin/mysql /usr/bin 做个链接即可

时间: 2024-10-12 20:06:12

CetOS6.5下编译安装Mysql5.6.16的相关文章

centos下编译安装MySQL5.7.16

一.简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一. MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性. MySQL所使用的 SQL 语言是用

CentOS6.5_64bit下编译安装MySQL-5.6.23

转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/44785511 ************************************************************         CentOS6.5_64bit下编译安装MySQL-5.6.23 **************************************************************一.关闭防火墙chkconfig iptable

centos 下编译安装mysql5.1与mysql5.5

mysql5.1.60编译安装 1.tar -zxvf mysql* 2../configure 之前要make clean ./configure --prefix=/home/shk/mysql-5.1.60 \ --enable-local-infile \ --with-unix-socket-path=/home/shk/mysql-5.1.60/var/mysql.sock \ --with-tcp-port=5506 \ --enable-thread-safe-client \

centos6.7下 编译安装MySQL5.7

centos6.7下编译安装MySQL5.7 准备工作 #-----依赖包及MySQL和boost安装包----- #yum包安装: shell> yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison #获取boost类库(5.7编译需要boost类库,编译时指定boost路径): shell> wget http://down

CentOS6.9编译安装MySQL5.7.16

部署环境: 系统CentOS6.9,mysql5.7.16,boost库 系统为2G内存 1.安装依赖包,使用yum安装cmake,6.9默认yum源自带 yum -y install gcc-c++ cmake bison-devel ncurses-devel 2.创建mysql的用户: useradd  -U -s /sbin/nologin mysql 3.创建必要的文件夹,并修改其目录用户所有者: mkdir -pv /usr/local/mysql/etc mkdir -pv /da

一、Ubuntu下编译安装Mysql5.0.45

一.编译安装Mysql5.0.45 在Ubuntu下搭建LNMP环境.编译安装mysql,nginx,php.最后在LNMP前提下安装composer,并且安装laravel框架.首先,第一步开始编译安装Mysql. 步骤: cd /usr/local/src,进入到文件夹中,这个文件夹用来保存所需使用的软件安装包. 接着键入"sudo wgethttp://downloads.mysql.com/archives/mysql-5.0/mysql-5.0.45.tar.gz"回车,如果

二、Ubuntu下编译安装PHP5.6.16

    在Ubuntu下搭建LNMP环境.编译安装mysql,nginx,php.最后在LNMP前提下安装composer,并且安装laravel框架.首先,第三步开始编译安装PHP5.6.16 1.先进入"/usr/local/src"文件夹中,接着键入 "sudo wget http://cn2.php.net/distributions/php-5.6.16.tar.gz"回车,等待下载完毕.下载完毕后,执行"sudo tar zxvf php-5.

三、Ubuntu下编译安装PHP5.6.16

    在Ubuntu下搭建LNMP环境.编译安装mysql,nginx,php.最后在LNMP前提下安装composer,并且安装laravel框架.首先,第三步开始编译安装PHP5.6.16 1.先进入"/usr/local/src"文件夹中,接着键入 "sudo wget http://cn2.php.net/distributions/php-5.6.16.tar.gz"回车,等待下载完毕.下载完毕后,执行"sudo tar zxvf php-5.

centos6.4下编译安装MySQL-5.5.33

若想在6.4版本下的centos编译安装MySQL必须使用新的编译器cmake. 1)安装cmake 直接yum安装 2)编译安装参数 使用cmake编译安装mysql-5.5.33,选项的方式有所改变: ./configure                cmake .            编译   ./configure –help         cmake . -LH or ccmake .   获取帮助 指定安装文件的安装路径时常用的选项:    -DCMAKE_INSTALL_P