Linux编译安装Mariadb数据库

一、安装cmake
cd /usr/local/src
tar zxvf cmake-2.8.12.1.tar.gz
cd cmake-2.8.12.1
./configure
注意报错需要安装gcc-c++
make   #编译
make install   #安装 
yum -y install cmake* 自动安装与cmake相关的依赖包和软件
yum install gcc-c++*
 yum install ncurses-devel bison libxml2-devel gcc-c++* cmake*
yum install bison
编译mariadb报错
注意删除CMakeCache.txt  在mariadb原目录下
不用删除CMakeCache.txt,如果安装目录就会改变成默认的目录。
 
 
二、安装MariaDB
# yum -y install ncurses-devel
#yum -y install bison
yum -y install libxml2-devel
 
 
groupadd mysql  #添加MariaDB数据库安装用户组mysql
useradd -g mysql mysql -s /bin/false  #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统
mkdir -p /home/mysql/ #创建MariaDB安装目录
mkdir -p /home/mysql/data  #创建MariaDB数据库存放目录
chown -R mysql:mysql /home/mysql/data   #设置MariaDB数据库目录权限
 
cd /usr/local/src
tar zxvf mariadb-5.5.33a.tar.gz  #解压
cd mariadb-5.5.33a #进入安装目录
 
cmake . -DCMAKE_INSTALL_PREFIX=/home/mysql  -DMYSQL_DATADIR=/home/mysql/data  -DSYSCONFDIR=/etc
make #编译
make install  #安装            make && make install 
 
编译mariadb报错
注意删除CMakeCache.txt  在mariadb原目录下
 
-----
  出现如下错误提示:
    -- Could NOT find LibXml2 (missing:  LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) 
    Warning: Bison executable not found in PATH
    需要安装libxml2-devel
----
 
cd /myapp/mysql
cp ./support-files/my-huge.cnf  /etc/my.cnf   #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)
vi /etc/my.cnf   #编辑配置文件,在 [mysqld] 部分增加
datadir = /home/mysql/data  #添加MariaDB数据库路径
 
cp ./support-files/mysql.server  /etc/rc.d/init.d/mysqld  #把MariaDB加入系统启动
chmod 755 /etc/init.d/mysqld   #增加执行权限
chkconfig mysqld on  #加入开机启动
vi /etc/rc.d/init.d/mysqld  #编辑
basedir = /myapp/mysql   #MariaDB程序安装路径
datadir = /myapp/mysql/data  #MariaDB数据库存放目录
cd /myapp/mysql下:
./scripts/mysql_install_db --user=mysql  #生成MariaDB系统数据库
service mysqld start  #启动
vi /etc/profile   #把MariaDB服务加入系统环境变量:在最后添加下面这一行
export PATH=$PATH:/home/mysql/bin
source /etc/profile 生效变量
 
mysqladmin -u root -p password "withub"
 
三、更改数据库的密码和授权

设置所有IP可以访问

 mysql -uroot -pwithub
GRANT ALL PRIVILEGES ON*.* TO'root'@'%'withub' WITH GRANT OPTION;    允许远程登录
GRANT ALL PRIVILEGES ON*.* TO'root'@'root' IDENTIFIED BY'withub' WITH GRANT OPTION;   允许本地登录
GRANT ALL PRIVILEGES ON*.* TO'root'@'149.0.%' IDENTIFIED BY'123456' WITH GRANT OPTION;
开启远程访问:
GRANT ALL PRIVILEGES ON*.* TO'root'@'%'IDENTIFIED BY'123456' WITH GRANT OPTION;
flush privileges;
需要关闭防火墙或者开放3306端口,即可远程连接。
Just Do It
原文地址:https://www.cnblogs.com/JeremyWYL/p/7251435.html