一:准备工作
1.1到mysql官网下载source code版的mysql5.5
1.2安装cmake(前一篇文章)
1.3安装ncurses-devel
yum install ncurses-devel
1.4安装openssl-devel
yum install openssl-devel
1.5安装bison
yum install bison
1.6创建数据库数据存放目录、创建用户组、创建用户、修改MySQL_Data属主、属组
[root@localhost/]# mdkirMySQL_Data
[root@localhost/]# groupadd-r mysql
[root@localhost/]# useradd -r -g mysql -s /sbin/nologin mysql
[root@localhost/]# chown -R mysql.mysql/MySQL_DATA/
二:说明
安装过程中遇到了很多问题,通过google,百度得到了解决,主要就是以上软件没有安装,所以整理文档的时候就先把这部分内容提到了最开始,当要通过源码编译安装MySQL的时候首先要去检查这些软件是否已经安装过了,当然可能有些依赖包依然没有安装,可以通过以上类似的方式进行安装
三:安装过程:
3.1进入到mysql解压目录,执行cmake . -LH读取默认选项
错误描述:CMake Error:The source directory "/software/mysql-5.5.42-linux2.6-x86_64" does not appear to contain CMakeLists.txt
错误原因:这个错误的原因是,下载mysql包的时候下载错了,一定要选择sources code
3.2下载source code版本后继续执行cmake . -LH
3.3编译MySQL
cmake .
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_DATADIR=/MySQL_DATA -DSYSCONFDIR=/etc
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_READLINE=1
-DWITH_SSL=system
-DWITH_ZLIB=system -DWITH_LIBWRAP=0
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
说明:在这里可能会遇到如下错误
错误代码:error: ‘SSL_OP_NO_COMPRESSION’ undeclared(first use in this function)
错误原因:通过google得知是openssl版本低造成的
解决方法:官网给出的答案http://bugs.mysql.com/bug.php?id=68999
编辑MySQL源码目录下的 ./vio/viossl.c 文件,添加选中的内容
3.4.再次执行编译命令,编译通过
3.5执行make && make install完成安装
四:MySQL服务端相关配置:
4.1修改/usr/local/mysql下的文件的属组全部修改为mysql
[root@localhost/]#chown-R :mysql /usr/local/mysql/
4.2初始化数据库
[root@localhost/]# srcipts/mysql_install_db--user=mysql --datadir=/MySQL_DATA
4.3 拷贝support-files/my-large.cnf 到/etc/my.cnf
support-files/mysql.server /etc/init.d/mysqld
[root@localhost mysql]# cpsupport-files/my-large.cnf /etc/my.cnf
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld
4.4 把mysqld添加到系统服务
[root@localhost mysql]# chkconfig --add mysqld
五:MySQL客户端相关配置:
5.1把/usr/local/mysql/bin添加到$PATH中,并使之立即生效
5.2执行mysql命令,进入数据库
5.3.查看存储引擎
5.4.编辑my.cnf文件,添加datadir
5.5.删除匿名用户
5.6.修改密码,使密码生效,然后退出,重新登录
5.9.数据安装时候使用的数据库引擎是InnoDB,InnoDB默认多个表在一个表空间内,修改为每一个表一个表空间
5.10然后重启mysql服务生效
说明:因为51CTO平台的原因,导致图片会有水印,所以添加了word版本的安装说明