CentOS6.5 安装 Mariadb10.0.20

  最近在CentOS安装 Mariadb10.0.20,遇到一点小问题,所以把安装过程用博客记录:

  1. 文件复制到/usr/lcoal目录下:$cp mariadb-10.0.20-linux-x86_64.tar.gz /usr/local

  2.创建用户组及用户,以root操作:

    2.1.#groupadd mariadb

    2.2.#useradd -g mariadb mariadb

  3.解压文件:# tar -zxvf mariadb-10.0.20-linux-x86_64.tar.gz

  4.创建软连接:# ln -s mariadb-10.0.20-linux-x86_64 mariadb

  5.安装目录授权给mariadb:

    # chown -R mariadb:mariadb mariadb

    # chown -R mariadb:mariadb mariadb-10.0.20-linux-x86_64

  6.创建data目录,二进制日志目录-binlog,创建中继日志目录-relaylog:

    [root@master local]# mkdir -p /data/data0/mariadb/3306/data/

    [root@master local]# mkdir -p /data/data0/mariadb/3306/binlog/

    [root@master local]# mkdir -p /data/data0/mariadb/3306/relaylog/

  7./data/目录授权给mariadb:#chown -R mariadb:mariadb /data

  8.初始化mariadb(暂时不指定文件名):

    #su mariadb

    $cd /usr/local/mariadb/scripts

    $ ./mysql_install_db --no-defaults --basedir=/usr/local/mariadb --datadir=/data/data0/mariadb/3306/data/ --user=mariadb

    没有输出[ERROR]日志表示初始化完成

  9.启动mariadb数据库:

    9.1.获取默认的my.cnf文件,并修改my.cnf权限,如果权限为"777",mariadb会认为此文件不安全,自动忽略此文件:

    $ cp /usr/local/mariadb/support-files/my-large.cnf /usr/local/mariadb/my.cnf

    $ chmod 644 /usr/local/mariadb/my.cnf

    9.2.修改配置文件,在[mysqld]标签下添加(绿色为添加的内容),添加之后记得保存退出:

    [mysqld]

    basedir = /usr/local/mariadb/
    datadir = /data/data0/mariadb/3306/data
    log-error = /data/data0/mariadb/3306/mysql.log
    pid-file = /data/data0/mariadb/3306/mysql.pid
    log-bin = /data/data0/mariadb/3306/binlog/binlog
    relay-log-index = /data/data0/mariadb/3306/relaylog/relaylog
    relay-log-info-file = /data/data0/mariadb/3306/relaylog/relaylog
    relay-log =/data/data0/mariadb/3306/relaylog/relaylog
    port = 3306
    socket = /tmp/mysql.sock

    9.3.进入到安装目录的bin,启动mariadb:

    $ ./mysqld_safe --defaults-file=/usr/local/mariadb/my.cnf &

    会出现以下的报错信息:

150923 00:36:54 mysqld_safe The file /usr/local/mysql/bin/mysqld

does not exist or is not executable. Please cd to the mysql installation

directory and restart this script from there as follows:

./bin/mysqld_safe&

    经过上网查资料,mysqld_safe会默认去找"/usr/local/mysql/bin/mysqld"文件,但是我们现在采用的目录是"/usr/local/mariadb/bin/mysqld",原因分析及解决方案:

如果mysqld_safe失败,即使从MySQL安装目录调用仍然失败,你可以指定--ledir和--datadir选项来指示服务器和数据库在你的系统中的安装目录。
  一般情况,你不应编辑mysqld_safe脚本。相反,应使用命令行选项或my.cnf选项文件的[mysqld_safe]部分的选项来配置mysqld_safe。一般不需要编辑mysqld_safe来正确启动服务器。

    9.4.在my.cnf配置文件添加内容(绿色部分为添加内容),ledir指定包含mysqld程序的目录的路径,使用该选项来显式表示服务器位置。,添加之后记得保存退出:

    [client]

    port = 3306
    socket = /tmp/mysql.sock
    [mysqld_safe]
    ledir=/usr/local/mariadb/bin
    [mysqld]

    9.5.重新启动数据库,如果有监听3306端口,表明数据库启动成功:

    $ ./mysqld_safe --defaults-file=/usr/local/mariadb/my.cnf &

    $ netstat -ultn

  10.进入mariadb client,使用root登陆,密码默认为空,直接按回车即可:

    $ cd /usr/local/mariadb/bin

    $ ./mysql -uroot -p

posted @ 2015-09-23 00:57  lizebin0918  Views(231)  Comments(0Edit  收藏  举报