-
博文分类专栏
- Jquery基础教程
-
- 文章:(15)篇
- 阅读:46583
- shell命令
-
- 文章:(42)篇
- 阅读:154298
- Git教程
-
- 文章:(36)篇
- 阅读:234923
- leetCode刷题
-
- 文章:(76)篇
- 阅读:131946
-
mysql-5.7.19执行cmake的时候报错CMake Error at cmake/boost.cmake:81 (MESSAGE)2018-01-20 15:15 阅读(10592) 评论(0)
最近重新安装mysql发现,又报错,如下:
CMake Error at cmake/boost.cmake:81 (MESSAGE)
You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>
This CMake script will look for boost in <directory>. If it is not there,
it will download and unpack it (in that directory) for you.
If you are inside a firewall, you may need to use an http proxy:
export http_proxy=http://example.com:80
感觉有必要,记录一下,下次安装的时候,可以参考。
报错的原因是:mysql5.7依赖于boost1.59,系统默认的boost
因为使用的centos,很多简单的操作就是,执行
yum install boost
发现安装的既然是1.41版本的boost,看来得下载源码包安装了。
下载网址:http://sourceforge.net/projects/boost/files/boost/1.59.0
比如执行
wget http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
首先解压
tar -zxvf boost_1_59_0.tar.gz
因为boost并不需要我们安装,只需要放到指定的目录,在安装mysql的时候,指定boost目录即可,再次我将解压后的文件移动到/usr/local/boost目录中。
然后再次cmake命令如下:
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/localhost/mysql/data -DWITH_BOOST=/usr/local/boost
最后,就可以执行make && make install
安装后,生成的目录如下:
初始化
在初始化mysql的时候,mysql5.7与之前的版本还是有一定的区别。
之前的版本使用mysqld_db_install命令进行初始化的,但在5.7之后,数据库初始化发生了改变,需要mysqld命令进行初始化:
bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/var/mysql.pid --socket=/usr/local/mysql/var/mysql.sock
初始化完成后,就会在data目录下生成一些文件,如下:
设置配置文件
将/etc/my.cnf配置文件,移动到mysql安装目录,如下:
v /etc/my.cnf /usr/local/mysql/conf/my.cnf
根据实际情况,进行编辑my.cnf文件
[mysqld] basedir=/usr/local/mysql datadir=/usr/local/mysql/data socket=/usr/local/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 [mysqld_safe] log-error=/usr/local/mysql/mysqld.log pid-file=/usr/local/mysql/mysqld.pi
最后,就可以启动mysql了
连接mysql