树莓派Raspbian Jessie源码编译安装MariaDB数据库服务器
这篇教程介绍如何在树莓派Raspbian Jessie系统上编译最新版MariaDB源码,创建Systemd service文件,使用Systemd管理MariaDB服务。写这篇教程时,最新版本的MariaDB是10.1.12。
Raspbian Jessie编译MariaDB源码
首先SSH登录树莓派。从MariaDB官方下载MariaDB的源码,或者使用下面的wget命令下载。
wget http://mirrors.opencas.cn/mariadb//mariadb-10.1.12/source/mariadb-10.1.12.tar.gz
下载完后,解压tar.gz文件。
tar xvf mariadb-10.1.12.tar.gz
安装编译所需要的依赖工具包。
sudo apt-get build-dep mariadb-server
cd进入解压后的mariadb目录。
cd mariadb-10.1.12/
使用cmake来配置编译环境。
cmake . -DBUILD_CONFIG=mysql_release
然后使用make命令开始编译过程。
make
一个700MHz CPU,512M内存的树莓派,这个编译过程可能需要5到6个小时的时间。所以这时候可以去干别的事情了。当编译完成后,使用make install将MariaDB安装到Raspbian Jessie系统。
sudo make install
启动MariaDB进程之前要做的事
安装好后还不能立即启动MariaDB数据库服务器。首先创建mysql系统用户。-r选项表示这个用户是系统用户。
sudo useradd -r mysql
然后,将/usr/local/mysql目录的所有者更改为mysql用户。MariaDB就是安装在这个目录下的。
sudo chown -R mysql /usr/local/mysql/
现在,使用mysql_install_db来初始化MariaDB的data目录,创建系统数据表和帮助数据表。MariaDB进程,即mysqld在运行时需要访问data目录。
sudo /usr/local/mysql/scripts/mysql_install_db --user=mysql
将/usr/local/mysql/bin添加到pi用户的路径。
PATH=$PATH:/usr/local/mysql/bin
也需要添加到root用户的路径。
su PATH=$PATH:/usr/local/mysql/bin
输入下面的命令启动MariaDB进程。
sudo /usr/local/mysql/bin/mysqld_safe --datadir='/usr/local/mysql/data'
为MariaDB的root用户设置密码。
sudo mysql_secure_installation
这个命令也可以让你删除test数据库和anonymous用户。在生产服务器上一定到运行这条命令。
为MariaDB创建Systemd service文件
sudo nano /etc/systemd/system/mariadb.service
将下面的文字粘贴到文件中。
[Unit] Description=MariaDB database server After=network.target After=syslog.target [Service] Type=simple PrivateNetwork=false User=mysql Group=mysql CapabilityBoundingSet=CAP_IPC_LOCK PermissionsStartOnly=true ExecStart=/usr/local/mysql/bin/mysqld_safe --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID Restart=on-abort RestartSec=5s UMask=007 PrivateTmp=false LimitNOFILE=16364 [Install] WantedBy=multi-user.target Alias=mysql.service Alias=mysqld.service
保存文件。杀死当前正在运行的mysqld进程,然后使用systemctl再次启动MariaDB数据库服务器。
sudo pkill mysqld sudo systemctl start mariadb
查看MariaDB数据库服务器的状态。
sudo systemctl status mariadb
设置MariaDB随树莓派开机启动。
sudo systemctl enable mariadb
使用mysql客户端登录MariaDB数据库服务器。
mysql -u root -p
在这里可以看见MariaDB服务器的版本,10.1.12。
好了!我们成功地在树莓派Raspbian Jessie系统上编译了最新版MaridDB源码,安装了MariaDB数据库服务器,并能使用Systemd轻松管理MariaDB服务。