Mysql-5.7.21 (cmake)编译安装
简介Mysql是经常使用的关系型数据库,那么使用之前需要先会安装。Mysql的安装方式有几种,本文我们主要记录下如何使用cmake进行编译安装。
            一、单独安装cmake
a、下载地址
https://cmake.org/files/v3.11/cmake-3.11.0.tar.gz
b、解压
tar xf cmake-3.11.0.tar.gz
c、进入目录
cd cmake-3.11.0
d、执行
./configure
e、编译安装
gmake  && gmake install
二、安装Mysql
安装依赖包
yum -y install gcc gcc-c++ ncurses ncurses-devel cmake
1、下载mysql-5.7.21源码包(mysql-5.7.21.tar.gz)
2、解压源码包
tar xf mysql-5.7.21.tar.gz
3、进入到目录
cd mysql-5.7.21
4、创建mysql的安装目录,进入到当前目录后:
mkdir mysql-5.7.21
创建软连接:
ln -s mysql-5.7.21/ mysql
注意 后面mysql这个不需要提前创建,否则会创建到下层目录下
5、创建mysql用户和用户组
addgroup mysql
adduser -g mysql  -s /sbin/nologin mysql 
6、mysql-5.7版本需要下载boost_1_59_0.tar.gz
下载好后解压即可
7、配置mysql预编译参数:
cmake -DCMAKE_INSTALL_PREFIX=/apps/mysql-5.7.21 \
-DMYSQL_UNIX_ADDR=/apps/mysql-5.7.21/data/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/apps/mysql-5.7.21/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/root/boost_1_59_0
选项参数说明:
- -DCMAKE_INSTALL_PREFIX:安装路径
 - -DMYSQL_DATADIR:数据存放目录
 - -DWITH_BOOST:boost源码路径
 - -DSYSCONFDIR:my.cnf配置文件目录
 - -DEFAULT_CHARSET:数据库默认字符编码
 - -DDEFAULT_COLLATION:默认排序规则
 - -DENABLED_LOCAL_INFILE:允许从本文件导入数据
 - -DEXTRA_CHARSETS:安装所有字符集
 
8、编译及安装
make -j `grep processor /proc/cpuinfo | wc -l`
make install
注意:-j参数表示根据CPU核数指定编译时的线程数,可以加快编译速度。默认为1个线程编译,经测试单核CPU,1G的内存,编译完需要将近1个小时。
三、安装错误
1、编译错误:c++: internal compiler error: Killed (program cc1plus)
解决方式:
原因:内存不足
以下网上找到的解决方案
1. 创建分区文件,大小 2G
dd if=/dev/zero of=/swapfile bs=1k count=2048000
2. 生成 swap 文件系统
mkswap /swapfile
3. 激活 swap 文件
swapon /swapfile
4. 修改 /etc/fstab 文件,新增如下内容:
/swapfile swap swap defaults 0 0
2、错误:
– Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
CMake Error at cmake/readline.cmake:64 (MESSAGE):
Curses library not found.  Please install appropriate package,
  remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
Call Stack (most recent call first):
cmake/readline.cmake:107 (FIND_CURSES)
cmake/readline.cmake:197 (MYSQL_USE_BUNDLED_EDITLINE)
CMakeLists.txt:535 (MYSQL_CHECK_EDITLINE)
解决方法:
yum install ncurses-devel
为了将一个大的数据进行压缩,可以采用Gzip的方式进行处理,那么在Go语言中如何通过Gzip方式压缩数据呢,在使用过程中大家也会跟我一样会踩坑。本文主要记录下问题和最终的实现方式。
图像梯度计算的是图像变化的速度。对于图像的边缘部分,其灰度值变化较大,梯度值也较大;相反,对于图像中比较平滑的部分,其灰度值变化较小,相应的梯度值也较小。图像梯度计算需要求导数,但是图像梯度一般通过计算像素值的差来得到梯度的近似值(近似导数值)。本节主要介绍Sobel算子、Scharr算子、Laplacian算子和Canny算子的使用.
网页扫描二维码库:Html5-Qrcode,官网地址:https://scanapp.org/html5-qrcode-docs/
nodejs中使用npm和yarn,使用最新阿里云镜像 aliyun mirror,网上很多还是文章用的是下面这个地址~~yarn config set registry https://registry.npm.taobao.org~~
《康熙王朝》是一部非常优秀的电视连续剧,陈道明演的康熙是我觉得最有帝王气魄,让人意犹未尽,本文主要记录一小段非常经典的对白。
快速生成表格
Electron页面跳转、浏览器打开链接和打开新窗口
Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题
在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。