您好,欢迎访问一九零五行业门户网

【MariaDB】安装MariaDB,与MySQL并存

mariadb为可替代mysql的增强版本, 但在已安装了mysql的情况下同时也能安装mariadb. (这是有意义的, 例如你想从一个数据库/应用迁移到另一个数据库/应用中.) 以下是在已安装mysql的情况下,安装mariadb的主要步骤. 下载最新版本的二进制编译包tar.gz (目前为m
mariadb为可替代mysql的增强版本, 但在已安装了mysql的情况下同时也能安装mariadb. (这是有意义的, 例如你想从一个数据库/应用迁移到另一个数据库/应用中.)
以下是在已安装mysql的情况下,安装mariadb的主要步骤.
下载最新版本的二进制编译包tar.gz (目前为mariadb-5.5.24-linux-x86_64.tar.gz),并将它解压到你的自定义目录中. 本文档假定安装目录为/opt.
[root@mariadb-near-mysql ~]# cat /etc/issuecentos release 6.2 (final)[root@mariadb-near-mysql ~]# rpm -qa mysql*mysql-5.1.61-1.el6_2.1.x86_64mysql-libs-5.1.61-1.el6_2.1.x86_64mysql-server-5.1.61-1.el6_2.1.x86_64[root@mariadb-near-mysql ~]# ps axf | grep mysqld 2072 pts/0 s+ 0:00 \_ grep mysqld 1867 ? s 0:01 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock ... 1974 ? sl 0:06 \_ /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql ...
创建数据所在目录及符号链接,如下所示:
[root@mariadb-near-mysql opt]# mkdir mariadb-data[root@mariadb-near-mysql opt]# ln -s mariadb-5.5.24-linux-x86_64 mariadb[root@mariadb-near-mysql opt]# ls -altotal 20drwxr-xr-x. 5 root root 4096 2012-06-06 07:27 .dr-xr-xr-x. 23 root root 4096 2012-06-06 06:38 ..lrwxrwxrwx. 1 root root 27 2012-06-06 07:27 mariadb -> mariadb-5.5.24-linux-x86_64drwxr-xr-x. 13 root root 4096 2012-06-06 07:07 mariadb-5.5.24-linux-x86_64drwxr-xr-x. 2 root root 4096 2012-06-06 07:26 mariadb-data
创建组mariadb及用户mariadb, 设置文件对应的所属权限:
[root@mariadb-near-mysql opt]# groupadd --system mariadb[root@mariadb-near-mysql opt]# useradd -c mariadb server -d /opt/mariadb -g mariadb --system mariadb[root@mariadb-near-mysql opt]# chown -r mariadb:mariadb mariadb-5.5.24-linux-x86_64/[root@mariadb-near-mysql opt]# chown -r mariadb:mariadb mariadb-data/
通过从support-files中拷贝my.cnf, 在/opt/mariadb目录下创建新的my.cnf:
[root@mariadb-near-mysql opt]# cp mariadb/support-files/my-medium.cnf mariadb-data/my.cnf[root@mariadb-near-mysql opt]# chown mariadb:mariadb mariadb-data/my.cnf
编辑文件/opt/mariadb-data/my.cnf, 增加自定义值, socket, port, user及最重要的设置: data目录和base目录. 最后的设置至少是这样的:
[client]port = 3307socket = /opt/mariadb-data/mariadb.sock[mysqld]datadir = /opt/mariadb-databasedir = /opt/mariadbport = 3307socket = /opt/mariadb-data/mariadb.sockuser = mariadb
从support-files文件中拷贝init.d脚本到对应的位置:
[root@mariadb-near-mysql opt]# cp mariadb/support-files/mysql.server /etc/init.d/mariadb[root@mariadb-near-mysql opt]# chmod +x /etc/init.d/mariadb
编辑/etc/init.d/mariadb,使用mariadb替换
mysql设置项, 如下所示:
- # provides: mysql+ # provides: mariadb- basedir=+ basedir=/opt/mariadb- datadir=+ datadir=/opt/mariadb-data- lock_file_path=$lockdir/mysql+ lock_file_path=$lockdir/mariadb
最麻烦的步骤是该文件最后的修改. 你需要告诉mariadb读取唯一的cnf文件. 在$bindir/mysqld_safe之后加上--defaults-file=/opt/mariadb-data/my.cnf. 最后参数设置应该是这样的:
# give extra arguments to mysqld with the my.cnf file. this script# may be overwritten at next upgrade.$bindir/mysqld_safe --defaults-file=/opt/mariadb-data/my.cnf --datadir=$datadir --pid-file=$mysqld_pid_file_path $other_args >/dev/null 2>&1 &
显式指定my.cnf作为传入参数,来运行
mysql_install_db:
[root@mariadb-near-mysql opt]# cd mariadb[root@mariadb-near-mysql mariadb]# scripts/mysql_install_db --defaults-file=/opt/mariadb-data/my.cnf
现在你可以这样启动mariadb:
[root@mariadb-near-mysql opt]# /etc/init.d/mariadb startstarting mysql... [ ok ]
把mariadb启动设置为系统级别启动:
[root@mariadb-near-mysql opt]# cd /etc/init.d[root@mariadb-near-mysql init.d]# chkconfig --add mariadb [root@mariadb-near-mysql init.d]# chkconfig --levels 3 mariadb on
最后,测试现在有两个数据库服务实例在运行:
[root@mariadb-near-mysql ~]# mysql -e select version();+-----------+| version() |+-----------+| 5.1.61 |+-----------+[root@mariadb-near-mysql ~]# mysql -e select version(); --socket=/opt/mariadb-data/mariadb.sock+----------------+| version() |+----------------+| 5.5.24-mariadb |+----------------+
如何升级mariadb?如果你想升级mariadb,可通过/opt/mariadb-dat目录下的mariadb.socket, my.cnf及 databases, 完成以下步骤即可完成升级:
从新版mariadb包解压文件到/opt目录(可放到与当前版本所在目录的同级位置)停止运行当前mariadb更改符号链接mariadb,使其指向新版本包所在的目录重新启动mariadb运行升级脚本...但要记得提供socket选项: --socket=/opt/mariadb-data/mariadb.sock
其它类似信息

推荐信息