原文链接:https://mariadb.com/kb/en/installing-mariadb-alongside-mysql/
xiaomo译------
MariaDB为可替代MySQL的增强版本, 但在已安装了MySQL的情况下同时也能安装MariaDB. (这是有意义的, 例如你想从一个数据库/应用迁移到另一个数据库/应用中.)
以下是在已安装MySQL的情况下,安装MariaDB的主要步骤.
[root@mariadb-near-mysql ~]# cat /etc/issue
CentOS release 6.2 (Final)
[root@mariadb-near-mysql ~]# rpm -qa mysql*
mysql-5.1.61-1.el6_2.1.x86_64
mysql-libs-5.1.61-1.el6_2.1.x86_64
mysql-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 -al
total 20
drwxr-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_64
drwxr-xr-x. 13 root root 4096 2012-06-06 07:07 mariadb-5.5.24-linux-x86_64
drwxr-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 = 3307
socket = /opt/mariadb-data/mariadb.sock
[mysqld]
datadir = /opt/mariadb-data
basedir = /opt/mariadb
port = 3307
socket = /opt/mariadb-data/mariadb.sock
user = 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
[root@mariadb-near-mysql opt]# /etc/init.d/mariadb start
Starting MySQL... [ OK ]
[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
分享到:
相关推荐
MySQL集群(一台主机安装MariaDB与MySQL同时运行) 以下是在已安装MySQL的情况下,安装MariaDB的主要步骤. [root@mariadb-near-mysql ~]# cat /etc/issue CentOS release 6.2 (Final) [root@mariadb-near-...
mysql8.0审计日志插件mariaDb安装失败记录 记录安装过程,失败原因
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品
MariaDB数据库,完全兼容MySQL。 Delphi 等编译型语言连接MariaDB数据库需要使用的DLL 网上很难找到,我找了很久才找到。 版本:win32 : 3.1.4 win64 : 3.2.3 将对应的32位或者64位DLL放到执行文件目录中或者...
阿里云服务器上,从mysql 切换为 mariadb需要的安装步奏及配置,已经java代码中的修改
MariaDB and MySQL Common Table Expressions and Window Functions Revealed introduces and explains CTEs and window functions, newly available in MariaDB 10.2 and MySQL 8.0, and helps you understand why ...
书籍《MYSQL与MARIADB学习指南》中从官方下载的SQL文件
在Qt6下编译的MySQL/mariaDB驱动,安装方法参见 https://blog.csdn.net/a3573/article/details/105297367
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来...
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来...
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来...
mariadb安装教程
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL
mariadb是MySQL的一个分支,是由开发MySQL的团队成员之一,分离后开发的数据库产品,用法和MySQL完全一致,并且mariadb安装起来要比MySQL更不容易出现环境问题。
包含了mysql-connector-java-8.0.27.jar 、mariadb-java-client-2.7.3.jar与c3p0-0.9.5.5 的相关jar包
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来...
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来...
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来...