Linux下编译安装Mysql 5.5的简单步骤
作者:虫虫开源 发布时间:2024-01-27 13:33:03
首先是安装cmake环境。因为博主测试机是ubuntu,所以直接用apt-get install cmake命令来安装,yum相信应该也一样。或者可以编译安装,步骤如下。
wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz
tarx zvfc cmake-2.8.12.2.tar.gz
cd cmake-2.8.12.2
./configure
make && make install
安装完成后执行cmake -version,确定已经正确安装。
然后下载mysql最新源码包,编译安装。
wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.36.tar.gz
tar xzvf mysql-5.5.36.tar.gz
cd mysql-5.5.36
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/data/mysql
make && make install
这里博主遇到一个有关ssl的错误,提示信息如下所示。
Linking C shared module adt_null.so
[ 65%] Built target audit_null
Scanning dependencies of target vio
[ 65%] Building C object vio/CMakeFiles/vio.dir/vio.c.o
[ 65%] Building C object vio/CMakeFiles/vio.dir/viosocket.c.o
[ 65%] Building C object vio/CMakeFiles/vio.dir/viossl.c.o
/root/mysql-5.5.36/vio/viossl.c: In function ‘ssl_do':
/root/mysql-5.5.36/vio/viossl.c:175: error: ‘SSL_OP_NO_COMPRESSION' undeclared (first use in this function)
/root/mysql-5.5.36/vio/viossl.c:175: error: (Each undeclared identifier is reported only once
/root/mysql-5.5.36/vio/viossl.c:175: error: for each function it appears in.)
make[2]: *** [vio/CMakeFiles/vio.dir/viossl.c.o] Error 1
make[1]: *** [vio/CMakeFiles/vio.dir/all] Error 2
make: *** [all] Error 2
最后发现这个问题的原因是mysql5.5无法在openssl-1.0.0及更低版本下编译导致的。如果不需要ssl可以去掉WITH_SSL配置项,也可以升级openssl的版本,另外更方便的方法可以在cmake之前打一个补丁。
wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.36.tar.gz
tar xzvf mysql-5.5.36.tar.gz
cd mysql-5.5.36
wget -c "http://bugs.mysql.com/file.php?id=19941&bug_id=68999" -O mysql-openssl.patch
patch -p1 < span > mysql-openssl.patch
最后复制配置文件、修改。
cp support-files/my-medium.cnf /etc/my.cnf
sed '/skip-external-locking/i\datadir = /data/mysql' -i /etc/my.cnf
sed -i 's:#innodb:innodb:g' /etc/my.cnf
sed -i 's:/usr/local/mysql/data:/data/mysql:g' /etc/my.cnf
启动mysql,成功!


猜你喜欢
- 前一段时间有发过一个简单的JMAIL邮件发邮件的代码,今天就把这个代码做一个具体的注解,并增加了另外两个格式的代码,并举几个简单
- 先上两段代码<script>var i = 2;function test(){var i = 1;}test();alert(
- 1.python爬虫浏览器伪装#导入urllib.request模块import urllib.request#设置请求头headers=(
- 引言“深入认识Python内建类型”这部分的内容会从源码角度为大家介绍Python中各种常用的内建类
- MaxDB和MySQL是独立的数据库管理服务器。系统间的协同性是可能的,通过相应的方式,系统能够彼此交换数据。要想在MaxDB和MySQL之
- 一般一个网站的首页访问量是最大的,如果您的网站的首页打开的非常缓慢,您的客户将会陆续离开你的网站.通常我们把需要经过复杂运算或者查询数据库得
- static function convert($size) { &
- javascript:单行注释用//呵呵呵呵;多行注释用/*hdhdhdh*/javascript中区别大小写,定义变量使用关键字var,语
- 刚刚心血来潮,编了一个国际域名查询的功能页面,比较简单,没有做什么美化和修饰,主要利用了服务器端的XMLHTTP访问第三方服务器实现域名查询
- 除法啰嗦的,不仅是python。整数除以整数看官请在启动idle之后,练习下面的运算:>>> 2/50>>&g
- 一、IE透明度问题在IE的高度超过某一阀值时,会产生透明度不时失效的问题,这现象比较奇怪,(会有的时候全黑,有的时候全白)你有可能无法复现。
- 代码和说明如下:<%Const ForReading = 1 &nbs
- 本文实例讲述了django框架模型层功能、组成与用法。分享给大家供大家参考,具体如下:Django models是Django框架自定义的一
- 这篇文章不谈大道理,只谈细节。关于facebook的大道理,大家可以去海内网的帖子《谁去救救麦田老师吧》讨论。那里有很多IT评论高手,谈的很
- QueryCache(下面简称QC)是根据SQL语句来cache的。一个SQL查询如果以select开头,那么MySQL服务器将尝试对其使
- 第一步:创建django项目打开终端,切换到期望所写项目的地址:cd python3_django_projects;输入命令:django
- 引言事情是这样的,直接开讲面试官:npm run xxx的时候,发生了什么?讲的越详细越好。我(心想,简单啊): 首先,DNS 解析,将域名
- 例子1:<input type="text" value="0" onkeyup="
- 大小写字母转换:函数 uc (uppercase) 将所有的小写字母转成大写;函数 lc (lowercase) 将所有的大写字母转成小写;
- 什么是事务?事务是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。数据库事务通常包含了一个序列的对数据库的读/写操作