MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可
。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,
因此社区采用分支的方式来避开这个风险。
[3]
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
在存储引擎方面,1009版起使用XtraDB(名称代号为Aria)来代替MySQL的InnoDB。
MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,
将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,
MySQL的所有权也落入Oracle的手中。
第一步,打开桌面上的Navicat快捷方式第二步,进入Navicat主界面第三步,点击左上角的文件第四步,下拉列表中选中新建连接第五步,选择MariaDB第六步,d出新建连接对话框第七步,根据实际情况填写相应信息,点击确定第八步,成功生成连接MariaDB数据库
MariaDB 是一个采用 Maria 存储引擎的MySQL分支版本,是由原来 MySQL 的作者Michael Widenius创办的公司所开发的免费开源的数据库服务器。
这个项目的很多代码都改编于 MySQL 60,例如 “pool of threads”功能提供解决多数据连接问题。MariaDB 5141 RC可以到这里下载,32位和64位已编译Linux版本,还包括源代码包。MariaDB基于GPL 20发布。
与 MySQL 相比较,MariaDB 更强的地方在于:
Maria 存储引擎
PBXT 存储引擎
XtraDB 存储引擎
FederatedX 存储引擎
更快的复制查询处理
线程池
更少的警告和bug
运行速度更快
更多的 Extensions (More index parts, new startup options etc)
更好的功能测试
数据表消除
慢查询日志的扩展统计
支持对 Unicode 的排序
相对于MySQL最新的版本56来说,在性能、功能、管理、NoSQL扩展方面,MariaDB包含了更丰富的特性。比如微秒的支持、线程池、子查询优化、组提交、进度报告等。详情见列表。
参考:网页链接
一, CentOS7环境下
1 安装Mysql5619,安装成功后,端口号:3306
[root@centOS7]# mysql -uroot -h127001 -P3306 -p
mysql> select version();
+-----------+
| version() |
+-----------+
| 5619 |
+-----------+
1 row in set (000 sec)
2安装MariaDB10012,安装成功后,口端口号:3307
[root@centOS7]# mysql -uroot -h127001 -P3307 -p
mysql> select version();
+---------------------+
| version() |
+---------------------+
| 10012-MariaDB-log |
+---------------------+
1 row in set (000 sec)
下面是,在Mysql安装好后,安装MariaDB10012的详细方法
下载最新版本的二进制编译包targz (目前为mariadb-10012-linux-x86_64),并将它解压到你的自定义目录中 本文档假定安装目录为/opt
创建数据所在目录及符号链接,如下所示:
[root@centOS7 opt]# mkdir mariadb-data
[root@centOS7 opt]# ln -s mariadb-10012-linux-x86_64 mariadb
[root@centOS7 opt]# ls -al
total 20
drwxr-xr-x 5 root root 4096 2014-09-26 07:27
dr-xr-xr-x 23 root root 4096 2014-09-26 06:38
lrwxrwxrwx 1 root root 27 2014-09-26 07:27 mariadb -> mariadb-10012-linux-x86_64
drwxr-xr-x 13 root root 4096 2014-09-26 07:07 mariadb-10012-linux-x86_64
drwxr-xr-x 2 root root 4096 2014-09-26 07:26 mariadb-data
创建组mariadb及用户mariadb, 设置文件对应的所属权限:
[root@centOS7 opt]# groupadd --system mariadb
[root@centOS7 opt]# useradd -c "MariaDB Server" -d /opt/mariadb -g mariadb --system mariadb
[root@centOS7 opt]# chown -R mariadb:mariadb mariadb-10012-linux-x86_64/
[root@centOS7 opt]# chown -R mariadb:mariadb mariadb-data/
通过从support-files中拷贝mycnf, 在/opt/mariadb目录下创建新的mycnf:
[root@centOS7 opt]# cp mariadb/support-files/my-mediumcnf mariadb-data/mycnf
[root@centOS7 opt]# chown mariadb:mariadb mariadb-data/mycnf
编辑文件/opt/mariadb-data/mycnf, 增加自定义值, socket, port, user及最重要的设置: data目录和base目录 最后的设置至少是这样的:
[client]
port = 3307
socket = /opt/mariadb-data/mariadbsock
[mysqld]
datadir = /opt/mariadb-data
basedir = /opt/mariadb
port = 3307
socket = /opt/mariadb-data/mariadbsock
user = mariadb
从support-files文件中拷贝initd脚本到对应的位置:
[root@centOS7 opt]# cp mariadb/support-files/mysqlserver /etc/initd/mariadb
[root@centOS7 opt]# chmod +x /etc/initd/mariadb
编辑/etc/initd/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/mycnf 最后参数设置应该是这样的:
# Give extra arguments to mysqld with the mycnf file This script
# may be overwritten at next upgrade
$bindir/mysqld_safe --defaults-file=/opt/mariadb-data/mycnf --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 &
显式指定 mycnf作为传入参数,来运行 mysql_install_db:
[root@centOS7 opt]# cd mariadb
[root@centOS7 mariadb]# scripts/mysql_install_db --defaults-file=/opt/mariadb-data/mycnf
现在你可以这样启动MariaDB:
[root@centOS7 opt]# /etc/initd/mariadb start
Starting MySQL SUCCESS
把MariaDB启动设置为系统级别启动:
[root@centOS7 opt]# cd /etc/initd
[root@centOS7 initd]# chkconfig --add mariadb
[root@centOS7 initd]# chkconfig --levels 3 mariadb on
最后,测试现在有两个数据库服务实例在运行:
[root@centOS7 ~]# mysql -e "SELECT VERSION();"
+-----------+
| VERSION() |
+-----------+
| 5619 |
+-----------+
[root@mariadb-near-mysql ~]# mysql -e "SELECT VERSION();" --socket=/opt/mariadb-data/mariadbsock
+--------------------+
| VERSION() |
+--------------------+
|10012-MariaDB-log |
+--------------------+
定义连接字符串:string connStr="连接字符串"; //在“服务器资源管理器”中找到你的数据库,反键,属性,找到连接字符串,复制出来
定义sqlconnection对象,首先引用systemdatasqlclient命名空间;
sqlconnection sqlConn=new sqlconnection(connStr);//带有一个参数,即上面定义的连接字符串。
3打开数据库连接:sqlConnopen(); //调用open()方法
至此,数据库已经连接上,然后根据你的实际需要决定后边干怎么做,如果是插入、修改、删除,建议用sqlcommand ,如果是查询,建议用sqldataadapter;
以上就是关于CentOS 7为什么放弃了MySQL,而改使用MariaDB全部的内容,包括:CentOS 7为什么放弃了MySQL,而改使用MariaDB、Navicat怎么连接MariaDB数据库、MariaDB数据库的特点是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)