https://downloads.mariadb.org/

wget http://mirrors.neusoft.edu.cn/mariadb//mariadb-10.2.6/source/mariadb-10.2.6.tar.gz
tar -zxf mariadb-10.2.6.tar.gz 
cd mariadb-10.2.6
groupadd -r mariadb
useradd -g mariadb -r -M -s /sbin/nologin mariadb
mkdir /etc/mariadb

依赖  yum -y install gcc gcc-c++ make cmake ncurses ncurses libxml2 libxml2-devel openssl-devel bison bison-devel

cmake . -DMYSQL_UNIX_ADDR=/tmp/mariadb.sock -DSYSCONFDIR=/etc/mariadb -DMYSQL_TCP_PORT=3309 -DEXTRA_CHARSETS=all 
-DMYSQL_USER=mariadb -DCMAKE_INSTALL_PREFIX=/data/mariadb -DMYSQL_DATADIR=/data/mariadb/data  
-DWITH_XTRADB_STORAGE_ENGINE=1 -DWITH_FEDERATEDX_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 
-DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STPRAGE_ENGINE=1 
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWIYH_READLINE=1 -DWIYH_SSL=system -DVITH_ZLIB=system -DWITH_LOBWRAP=0 
-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
make -j 4
make install

cp support-files/my-large.cnf /etc/mariadb/my.cnf

配置/etc/mariadb/my.cnf
在[mysqld]模块添加下面的几行:
log-error=/var/log/mariadb_error.log
pid-file=/var/run/mysqld/mariadb.pid
user=mariadb
datadir=/data/mariadb/data
basedir=/data/mariadb/
新增加mysqld_safe块
[mysqld_safe]
log-error=/var/log/mariadb_error.log
pid-file=/var/run/mysqld/mariadb.pid

初始化  ./scripts/mysql_install_db --basedir=/data/mariadb/ --datadir=/data/mariadb/data/ --user=mariadb 
--defaults-file=/etc/mariadb/my.cnf

cp support-files/mysql.server /etc/init.d/mariadb
chmod 755 /etc/init.d/mariadb
vim /etc/init.d/mariadb   避免和现有的mysql冲突,如果没有mysql可以不用修改
找到   $bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" 
改完   $bindir/mysqld_safe --defaults-file=/etc/mariadb/my.cnf --datadir="/data/mariadb/data" 
--pid-file="/var/run/mysqld/mariadb.pid"   

找到  parse_server_arguments `$print_defaults $extra_args --mysqld mysql.server`
改为  parse_server_arguments `$print_defaults $extra_args --defaults-file=/etc/mariadb/my.cnf mysqld` 




启动前修下目录权限
# chown -R mariadb:mariadb /data/mariadb/

启动MariaDB:
# /etc/init.d/mariadb start

注:如果启动失败,查看下/var/log/mariadb_error.log文件看报什么错,修正即可。

设置root的密码
#/home/local/mariadb/bin/mysqladmin -u root password '123456'

进入MariaDB的shell下
[root@localhost mariadb]# /data/mariadb/bin/mysql -u root -p
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show engines\G;

MariaDB [mysql]>use mysql; //选择系统数据库mysql   
MariaDB [mysql]>select Host,User,Password from user; //查看所有用户   
MariaDB [mysql]>delete from user where password="";
MariaDB [mysql]>GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY '123456'; //为root添加
远程连接的能力
MariaDB [mysql]>flush privileges;   
MariaDB [mysql]>select Host,User,Password from user; //确认密码为空的用户是否已全部删除   
MariaDB [mysql]>exit; 


设置防火墙,以便局域网内的其它服务器可以访问
vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3309 -j ACCEPT

/etc/init.d/iptables restart

results matching ""

    No results matching ""