视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Centos6.5编译安装mysql5.6.16详细教程
2020-11-09 20:46:00 责编:小采
文档


一、编译安装MySQL前的准备工作

安装编译源码所需的工具和库
 yum install gcc gcc-c++ ncurses-devel perl

安装cmake,从http://www.cmake.org下载源码并编译安装

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 ~

或者
代码如下:yum -y install wget gcc-c++ ncurses ncurses-devel cmake make perl bison openssl openssl-devel gcc* libxml2 libxml2-devel curl-devel libjpeg* libpng* freetype*

二、设置MySQL用户和组 

新增mysql用户组
groupadd mysql

新增mysql用户
useradd -r -g mysql mysql

三、新建MySQL所需要的目录 

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

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

四、下载MySQL源码包并解压
从http://dev.mysql.com/downloads/mysql/直接下载源码,解压mysql-5.6.16.tar.gz

wget http://www.kakapart.com/files/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了,设置源码编译配置脚本。

 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/mysqldb \ 
-DMYSQL_TCP_PORT=3306 \ 
-DENABLE_DOWNLOADS=1

如果将来需要MySQL支持表情包的存储,则可使用以下编译配置脚本:
代码如下:cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/mysqldb -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1

-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将下载谷歌所使用的测试套件运行单元测试。
 注:重新运行配置,需要删除CMakeCache.txt文件
 rm CMakeCache.txt

编译源码
make

安装
make install

六、修改mysql目录所有者和组 

修改mysql安装目录

cd /usr/local/mysql 
chown -R mysql:mysql .

修改mysql数据库文件目录

cd /data/mysqldb
chown -R mysql:mysql . 

七、初始化mysql数据库

 cd /usr/local/mysql 
scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb 

八、复制mysql服务启动配置文件
 cp /usr/local/mysql/support-files/my-default.cnf /etc/my.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 --level 35 mysqld on

 十一、检查mysql服务是否启动

 netstat -tulnp | grep 3306 
mysql -u root -p 密码为空,如果能登陆上,则安装成功。 

十二、修改MySQL用户root的密码 

mysqladmin -u root password '123456' 

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

十三、可能会出现的错误
问题:
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.sockMySQL

问题解决:-bash:mysql:command not found
因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时,系统在/usr/bin下面查此命令,所以找不到了 
解决办法是:
 ln -s /usr/local/mysql/bin/mysql /usr/bin 做个链接即可Starting MySQL...The server quit without updating PID file [FAILED]ysqldb/smartlink.pid

解决方案:删掉/data/mysqldb目录下的smartlink.pid文件,然后执行命令chmod 777 -R  /data/mysqldb/ ,最后重启mysqlWarning: World-writable config file '/usr/local/mysql/my.cnf' is ignored

解决方案: chmod 4 /usr/local/mysql/my.cnf 将my.cnf设置为用户可读写,其他用户不可写,问题解决。

精彩专题分享:mysql不同版本安装教程 mysql5.7各版本安装教程 mysql5.6各版本安装教程

下载本文
显示全文
专题