首页 > 开发 > 综合 > 正文

AliSQL源码编译

2024-07-21 02:51:41
字体:
来源:转载
供稿:网友

1. 安装

该部分整理自山羊博客的AliSQL 源码编译, 致敬!

1.1 编译环境准备(CentOS 6.7)

CentOS 和 Ubuntu 环境的区别就在这一步,CentOS yum 源里的 gcc 版本是 4.4 的,不满足需求,可以通过我之前介绍过的 devtoolset 来安装高版本 gcc,devtoolset 目前最新套装是 devtoolset-4,包含 gcc 5.2。

yum install centos-release-scl -yyum install devtoolset-4-gcc-c++ devtoolset-4-gcc -yyum install cmake git -yyum install ncurses-devel openssl-devel bison -y

1.2 从 GitHub clone 代码

git clone https://github.com/alibaba/AliSQL.git

1.3 cmake 配置

在配置前,要先设置下环境变量,这样才能用到 devtoolset-4 套装里的gcc。更多cmake参数。

scl enable devtoolset-4 bash cmake . / -DCMAKE_BUILD_TYPE="Release" / -DCMAKE_INSTALL_PREFIX="/opt/alisql" / -DWITH_EMBEDDED_SERVER=0 / -DWITH_EXTRA_CHARSETS=all / -DWITH_MYISAM_STORAGE_ENGINE=1 / -DWITH_INNOBASE_STORAGE_ENGINE=1 / -DWITH_PARTITION_STORAGE_ENGINE=1 / -DWITH_CSV_STORAGE_ENGINE=1 / -DWITH_ARCHIVE_STORAGE_ENGINE=1 / -DWITH_BLACKHOLE_STORAGE_ENGINE=1 / -DWITH_FEDERATED_STORAGE_ENGINE=1 / -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 / -DWITH_TOKUDB_STORAGE_ENGINE=1

1.4 编译安装

make -j4 && make install

1.5 添加环境变量

export PATH=/opt/alisql/bin:$PATH

1.6 Disabling Transparent Hugepages for TokuDB

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo never > /sys/kernel/mm/transparent_hugepage/enabledfiif test -f /sys/kernel/mm/transparent_hugepage/defrag; then echo never > /sys/kernel/mm/transparent_hugepage/defragfi

2. 启动

# 添加MySQL组+用户groupadd mysqluseradd -M -s /sbin/nologin -g mysql mysqlmkdir -p /data/alisqlchown -R mysql:mysql /data/alisql# mysql_install_db设置的datadir必须跟/etc/my.cnf里的datadir相同, 否则报错([ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't )# http://blog.csdn.net/leshami/article/details/41801395cd /opt/alisqlscripts/mysql_install_db --user=mysql --datadir=/data/alisqlcp /opt/alisql/support-files/my-default.cnf /etc/my.cnfsed -i '/^/[mysqld/]$/{a/basedir = /opt/alisqla/datadir = /data/alisqla/port = 3306}' /etc/my.cnf# 方法1: 直接运行mysqld_safe/opt/alisql/bin/mysqld_safe# 方法2: 使用service启动cp support-files/mysql.server /etc/init.d/mysqldservice mysqld start

3. 关闭

# 方法1: 直接运行mysqladmin/opt/alisql/bin/mysqladmin -uroot shutdown# 方法2: 使用service方式关闭service mysqld stop

4. Help

/opt/alisql/bin/mysql --help --verbose

参考

AliSQL 源码编译CentOS 下编译安装AliSQLDisabling Transparent Hugepages for TokuDBAliSQL Github
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表