MacOS M1芯片安装ClickHouse


记录一下自己安装ClickHouse的过程,自己是按照官网的安装教程进行安装的,加上了自己安装过程中遇到的一些小问题,可以参考

如果下面的安装过程过时了或者不想看本人的安装请从官网查看最新的安装,官网地址:https://clickhouse.com/docs/en/development/build-osx/

 

电脑配置:Mac M1芯片

系统:Big Sur 11.6

 

1、安装homebrew

由于本人已安装了,这里就不写了,可以百度如何安装homebrew
 

2、安装Xcode和Command Line Tools

在AppStore中安装Xcode,比较大,11个G
安装最新版本的Command Line Tools
sudo rm -rf /Library/Developer/CommandLineTools
sudo xcode-select --install

执行上面的命令后,会出现安装的对话框,点击继续进行安装,会需要下载,下载和安装过程会比较久

 

3、安装需要的 编译器、工具和库

安装之前,最好将brew的源换成中科大的,否则安装会很慢
临时更换为中科大的源
export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.ustc.edu.cn/homebrew-core.git"
export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles"
brew update

安装所需的编译器等

brew install cmake ninja libtool gettext llvm gcc binutils

 

4、拉取ClickHouse源码

拉取之前,最好使用github代理拉取源码,否则直接从github拉取会异常的慢(源码5个多G)
直接从github拉取源码
git clone --recursive https://github.com/ClickHouse/ClickHouse.git

使用代理拉取源码

git clone --recursive https://hub.fastgit.org/ClickHouse/ClickHouse.git

这里拉取的是最新的源码,如果想拉取ClickHouse以前的版本,自己百度如何拉取GitHub上的历史版本源码,本人没有试,这里就不写了,以前版本的源码是否可以在M1和BigSur 11.6上进行编译也没有尝试

 

5、构建ClickHouse

官网提供了三种方式来构建
下面的这三种方式,我使用Xcode的AppleClang编译器编译了三次都失败了,换了homebrew的Clang才编译成功,所以最好直接使用第二种方法
(1)使用Xcode的AppleClang编译器
cd ClickHouse
rm -rf build
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
cmake --build . --config RelWithDebInfo
cd ..

(2)使用homebrew的Clang编译器

cd ClickHouse
rm -rf build
mkdir build
cd build
cmake -DCMAKE_C_COMPILER=$(brew --prefix llvm)/bin/clang -DCMAKE_CXX_COMPILER=$(brew --prefix llvm)/bin/clang++ -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
cmake --build . --config RelWithDebInfo
cd ..

(3)使用homebrew的GCC编译器

cd ClickHouse
rm -rf build
mkdir build
cd build
cmake -DCMAKE_C_COMPILER=$(brew --prefix gcc)/bin/gcc-11 -DCMAKE_CXX_COMPILER=$(brew --prefix gcc)/bin/g++-11 -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
cmake --build . --config RelWithDebInfo
cd ..

 

6、修改系统的开启最大文件数

按照如下内容修改或创建/Library/LaunchDaemons/limit.maxfiles.plist文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
        "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>limit.maxfiles</string>
    <key>ProgramArguments</key>
    <array>
      <string>launchctl</string>
      <string>limit</string>
      <string>maxfiles</string>
      <string>524288</string>
      <string>524288</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>ServiceIPC</key>
    <false/>
  </dict>
</plist>

给此文件赋权限

sudo chown root:wheel /Library/LaunchDaemons/limit.maxfiles.plist

验证文件是否有效

plutil /Library/LaunchDaemons/limit.maxfiles.plist

 

加载或重新加载文件
sudo launchctl load -w /Library/LaunchDaemons/limit.maxfiles.plist

使用命令验证文件是否生效

ulimit -n或launchctl limit maxfiles

如果显示524288则说明已生效

 

7、启动ClickHouse服务器

cd ClickHouse
./build/programs/clickhouse-server --config-file ./programs/server/config.xml

 本人安装完后,是没有config.xml文件的,有一个config.xml.S文件,所以就复制了一份并重命名为config.xml

cp ./programs/server/config.xml.S ./programs/server/config.xml

  

 
 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM