mariadb(數(shù)據(jù)庫管理系統(tǒng))
詳情介紹
mariadb是MySQL的一個數(shù)據(jù)庫管理系統(tǒng)分支,主要由開源社區(qū)在維護,采用GPL授權(quán)許可。mariadb的存在的目的就是完全兼容MySQL,包括API和命令行,使之能輕松成為MySQL的代替品。同時MariaDB基于事務的Maria存儲引擎,替換了MySQL的MyISAM存儲引擎,它使用了Percona的 XtraDB,InnoDB的變體,分支的開發(fā)者希望提供訪問即將到來的MySQL 5.4 InnoDB性能?,F(xiàn)實中甲骨文公司在收購了MySQL后,有將MySQL閉源的潛在風險,因此社區(qū)采用分支的方式來避開這個風險。 過去一年中,大型互聯(lián)網(wǎng)用戶以及Linux發(fā)行商紛紛拋棄MySQL,轉(zhuǎn)投MariaDB陣營。MariaDB是目前最受關(guān)注的MySQL數(shù)據(jù)庫衍生版,也被視為開源數(shù)據(jù)庫MySQL的替代品。mariadb有著許多Mysql所沒有的功能,包括線程池、組提交、非阻塞客戶端庫、微秒擴展和類型支持和全文搜索引擎等全新功能。
2、右擊編輯
[client]
#password =
port = 3306
socket = /tmp/mysql.sock
default-character-set=utf8(這個需要自己添加)
3、添加目錄(這里的目錄是你的解壓目錄):
[mysqld]
port = 3306
socket = /tmp/mysql.sock
basedir=E:/Softwear/mariadb-10.0.10-winx64 (這個需要自己添加)
datadir=E:/Softwear/mariadb-10.0.10-winx64/data (這個需要自己添加)
default-character-set=utf8 (這個需要自己添加)
default-storage-engine = MyISAM
4、在文件的最后在添加上:
[mysqlhotcopy]
interactive-timeout
[WinMySQLAdmin] (這個需要自己添加)
Server=E:\Softwear\mariadb-10.0.10-winx64\bin\mysqld.exe (這個需要自己添加)
5、單擊文件——另存為——文件名為my.ini。將文件復制到C盤的system目錄下即可
1、Maria 存儲引擎
2、PBXT 存儲引擎
3、XtraDB 存儲引擎
4、FederatedX 存儲引擎
5、更快的復制查詢處理
6、線程池
7、更少的警告和bug
8、運行速度更快
9、更多的 Extensions (More index parts, new startup options etc)
10、更好的功能測試
11、數(shù)據(jù)表消除
12、慢查詢?nèi)罩镜臄U展統(tǒng)計
13、支持對Unicode的排序
1、thread pool 線程池
2、group commit 組提交
3、non blocking client library 非阻塞客戶端庫
4、Microsecond 微秒擴展和類型支持
5、sphinxse sphinxse全文搜索引擎
6、subquery optimization 子查詢優(yōu)化
7、GIS functionality 地理信息系統(tǒng)相關(guān)擴展
8、Segmented MyISAM keycache MyISAM索引緩存分離
9、Authentication Plugins授權(quán)插件
10、limit row examined limit行限制
11、Progress reporting 進程進度報告
12、handlesocket 存儲引擎旁路查詢
13、dynamic column 動態(tài)列
2、所有客戶端API、協(xié)議和結(jié)構(gòu)都是完全一致的
3、所有文件名、二進制、路徑、端口等都是一致的
4、所有的MySQL連接器,比如PHP、Perl、Python、Java、.NET、MyODBC、Ruby以及MySQL C connector等在MariaDB中都保持不變
5、mysql-client包在MariaDB服務器中也能夠正常運行
6、共享的客戶端庫與MySQL也是二進制兼容的
1.使用mysqladmin創(chuàng)建數(shù)據(jù)庫
[root@test01 10.19.166.166 ~ ]
# mysqladmin -u root -p create testdb1
Enter password: // 此處填寫MariaDB數(shù)據(jù)庫的密碼
[root@test01 10.19.166.166 ~ ]
# mysql
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| hellodb |
| information_schema |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
| testdb1 |<---創(chuàng)建的好的庫
+--------------------+
2.登錄MariaDB庫創(chuàng)建
MariaDB [(none)]> create database testdb2;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| hellodb |
| information_schema |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
| testdb1 |
| testdb2 |<---創(chuàng)建好的庫
+--------------------+
二、MariaDB刪除數(shù)據(jù)庫
1.使用mysqladmin刪除數(shù)據(jù)庫
[root@test01 10.19.166.166 ~ ]
# mysqladmin -u root -p drop testdb1
Enter password: //輸入數(shù)據(jù)庫密碼
//執(zhí)行完上面的刪除命令后,會出現(xiàn)一個提示框,提示是否確認刪除此數(shù)據(jù)庫
Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.
Do you really want to drop the ‘testdb1‘ database [y/N] y //刪除
Database "testdb1" dropped
2.登錄MariaDB庫刪除
MariaDB [(none)]> drop database testdb2;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> show databases; //確認testdb2已被刪除
+--------------------+
| Database |
+--------------------+
| hellodb |
| information_schema |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
+--------------------+
三、MariaDB選擇數(shù)據(jù)庫,查看選擇庫下面的所有表
MariaDB [(none)]> show databases; //查看所有庫
+--------------------+
| Database |
+--------------------+
| hellodb |
| information_schema |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
+--------------------+
7 rows in set (0.00 sec)
MariaDB [(none)]> use mydb //選擇mydb數(shù)據(jù)庫
Database changed
MariaDB [mydb]> show tables; //查看mydb數(shù)據(jù)庫下面所有表信息
+----------------+
| Tables_in_mydb |
+----------------+
| ssc |
| t1 |
| tb2 |
| tb4 |
| tb5 |
+----------------+
5 rows in set (0.00 sec)
二、mariadb> SHOW [SESSION] VARIABLES; 客戶端變量,只對當前會話生效
注意:其中有些參數(shù)支持運行時修改,會立即生效;有些參數(shù)不支持,且只能通過修改配置文件,并重啟服務器程序生效有些參數(shù)作用域是全局的,且不可改變;有些可以為每個用戶提供單獨的設(shè)置
三、修改服務器變量的值
1.全局:mariadb> SET GLOBAL system_varname=value
mariadb> SET @@global.system_varname=value
2.會話:mariadb> SET [SESSION] system_varname=value
例如:set global sql_mode=strict_trans_tables
3.常用MODE:TRADITIONAL, STRICT_TRANS_TABLES
sql_mode默認為空,建議開發(fā)人員將這個值設(shè)為嚴格模式,這樣有些問題可以在數(shù)據(jù)庫的設(shè)計和開發(fā)階段就能發(fā)現(xiàn),而如果在生產(chǎn)環(huán)境下運行數(shù)據(jù)庫后發(fā)現(xiàn)這類問題,那么修改的代價將變得十分巨大
四、狀態(tài)變量:用于保存mariadb運行中的統(tǒng)計數(shù)據(jù)的變量
mariadb> SHOW GLOBAL STATUS
mariadb> SHOW [SESSION] STATUS
五、如何獲取程序默認使用的配置:
mysql --print-defaults(客戶端)
mysqld --print-defaults(服務端)
六、mariadb查詢執(zhí)行路徑
1.客戶端發(fā)送一條查詢給服務器
2.服務器先會檢查查詢緩存,如果命中了緩存,則立即返回存儲在緩存中的結(jié)果。否則進入下一階段
3.服務器端進行SQL解析、預處理,再由優(yōu)化器生成對應的執(zhí)行計劃
4.MariaDB根據(jù)優(yōu)化器生成的執(zhí)行計劃,調(diào)用存儲引擎的API來執(zhí)行查詢
5.將結(jié)果返回給客戶端
mariadb配置教程
1、打開解壓目錄,然后找到my-large,my-medium,my-small這三個文件,根據(jù)你的電腦的配置進行選擇,這里選擇的是my-large文件2、右擊編輯
[client]
#password =
port = 3306
socket = /tmp/mysql.sock
default-character-set=utf8(這個需要自己添加)
3、添加目錄(這里的目錄是你的解壓目錄):
[mysqld]
port = 3306
socket = /tmp/mysql.sock
basedir=E:/Softwear/mariadb-10.0.10-winx64 (這個需要自己添加)
datadir=E:/Softwear/mariadb-10.0.10-winx64/data (這個需要自己添加)
default-character-set=utf8 (這個需要自己添加)
default-storage-engine = MyISAM
4、在文件的最后在添加上:
[mysqlhotcopy]
interactive-timeout
[WinMySQLAdmin] (這個需要自己添加)
Server=E:\Softwear\mariadb-10.0.10-winx64\bin\mysqld.exe (這個需要自己添加)
5、單擊文件——另存為——文件名為my.ini。將文件復制到C盤的system目錄下即可
mariadb mysql區(qū)別
據(jù)了解到,mariadb 10.0大致相當于MySQL 5.6版本,是一個采用Aria存儲引擎的MySQL分支版本,與MySQL相比較,mariadb更強的地方在于:1、Maria 存儲引擎
2、PBXT 存儲引擎
3、XtraDB 存儲引擎
4、FederatedX 存儲引擎
5、更快的復制查詢處理
6、線程池
7、更少的警告和bug
8、運行速度更快
9、更多的 Extensions (More index parts, new startup options etc)
10、更好的功能測試
11、數(shù)據(jù)表消除
12、慢查詢?nèi)罩镜臄U展統(tǒng)計
13、支持對Unicode的排序
mariadb新功能
MariaDB5.5有,而MySQL5.6沒有的功能包括:1、thread pool 線程池
2、group commit 組提交
3、non blocking client library 非阻塞客戶端庫
4、Microsecond 微秒擴展和類型支持
5、sphinxse sphinxse全文搜索引擎
6、subquery optimization 子查詢優(yōu)化
7、GIS functionality 地理信息系統(tǒng)相關(guān)擴展
8、Segmented MyISAM keycache MyISAM索引緩存分離
9、Authentication Plugins授權(quán)插件
10、limit row examined limit行限制
11、Progress reporting 進程進度報告
12、handlesocket 存儲引擎旁路查詢
13、dynamic column 動態(tài)列
軟件特點
1、數(shù)據(jù)和表定義文件(.frm)是二進制兼容的2、所有客戶端API、協(xié)議和結(jié)構(gòu)都是完全一致的
3、所有文件名、二進制、路徑、端口等都是一致的
4、所有的MySQL連接器,比如PHP、Perl、Python、Java、.NET、MyODBC、Ruby以及MySQL C connector等在MariaDB中都保持不變
5、mysql-client包在MariaDB服務器中也能夠正常運行
6、共享的客戶端庫與MySQL也是二進制兼容的
mariadb使用方法
一、MariaDB創(chuàng)建數(shù)據(jù)庫1.使用mysqladmin創(chuàng)建數(shù)據(jù)庫
[root@test01 10.19.166.166 ~ ]
# mysqladmin -u root -p create testdb1
Enter password: // 此處填寫MariaDB數(shù)據(jù)庫的密碼
[root@test01 10.19.166.166 ~ ]
# mysql
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| hellodb |
| information_schema |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
| testdb1 |<---創(chuàng)建的好的庫
+--------------------+
2.登錄MariaDB庫創(chuàng)建
MariaDB [(none)]> create database testdb2;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| hellodb |
| information_schema |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
| testdb1 |
| testdb2 |<---創(chuàng)建好的庫
+--------------------+
二、MariaDB刪除數(shù)據(jù)庫
1.使用mysqladmin刪除數(shù)據(jù)庫
[root@test01 10.19.166.166 ~ ]
# mysqladmin -u root -p drop testdb1
Enter password: //輸入數(shù)據(jù)庫密碼
//執(zhí)行完上面的刪除命令后,會出現(xiàn)一個提示框,提示是否確認刪除此數(shù)據(jù)庫
Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.
Do you really want to drop the ‘testdb1‘ database [y/N] y //刪除
Database "testdb1" dropped
2.登錄MariaDB庫刪除
MariaDB [(none)]> drop database testdb2;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> show databases; //確認testdb2已被刪除
+--------------------+
| Database |
+--------------------+
| hellodb |
| information_schema |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
+--------------------+
三、MariaDB選擇數(shù)據(jù)庫,查看選擇庫下面的所有表
MariaDB [(none)]> show databases; //查看所有庫
+--------------------+
| Database |
+--------------------+
| hellodb |
| information_schema |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
+--------------------+
7 rows in set (0.00 sec)
MariaDB [(none)]> use mydb //選擇mydb數(shù)據(jù)庫
Database changed
MariaDB [mydb]> show tables; //查看mydb數(shù)據(jù)庫下面所有表信息
+----------------+
| Tables_in_mydb |
+----------------+
| ssc |
| t1 |
| tb2 |
| tb4 |
| tb5 |
+----------------+
5 rows in set (0.00 sec)
MariaDB命令
一、mariadb> SHOW GLOBAL VARIABLES; 全局變量影響服務器的全局操作二、mariadb> SHOW [SESSION] VARIABLES; 客戶端變量,只對當前會話生效
注意:其中有些參數(shù)支持運行時修改,會立即生效;有些參數(shù)不支持,且只能通過修改配置文件,并重啟服務器程序生效有些參數(shù)作用域是全局的,且不可改變;有些可以為每個用戶提供單獨的設(shè)置
三、修改服務器變量的值
1.全局:mariadb> SET GLOBAL system_varname=value
mariadb> SET @@global.system_varname=value
2.會話:mariadb> SET [SESSION] system_varname=value
例如:set global sql_mode=strict_trans_tables
3.常用MODE:TRADITIONAL, STRICT_TRANS_TABLES
sql_mode默認為空,建議開發(fā)人員將這個值設(shè)為嚴格模式,這樣有些問題可以在數(shù)據(jù)庫的設(shè)計和開發(fā)階段就能發(fā)現(xiàn),而如果在生產(chǎn)環(huán)境下運行數(shù)據(jù)庫后發(fā)現(xiàn)這類問題,那么修改的代價將變得十分巨大
四、狀態(tài)變量:用于保存mariadb運行中的統(tǒng)計數(shù)據(jù)的變量
mariadb> SHOW GLOBAL STATUS
mariadb> SHOW [SESSION] STATUS
五、如何獲取程序默認使用的配置:
mysql --print-defaults(客戶端)
mysqld --print-defaults(服務端)
六、mariadb查詢執(zhí)行路徑
1.客戶端發(fā)送一條查詢給服務器
2.服務器先會檢查查詢緩存,如果命中了緩存,則立即返回存儲在緩存中的結(jié)果。否則進入下一階段
3.服務器端進行SQL解析、預處理,再由優(yōu)化器生成對應的執(zhí)行計劃
4.MariaDB根據(jù)優(yōu)化器生成的執(zhí)行計劃,調(diào)用存儲引擎的API來執(zhí)行查詢
5.將結(jié)果返回給客戶端
下載地址
- 電腦版
mariadb(數(shù)據(jù)庫管理系統(tǒng)) v11.1.2
- 本地下載通道:
- 浙江電信下載
- 北京聯(lián)通下載
- 江蘇電信下載
- 廣東電信下載
同類軟件
網(wǎng)友評論
共0條評論(您的評論需要經(jīng)過審核才能顯示)
分類列表
類似軟件
精彩發(fā)現(xiàn)
換一換精品推薦
-
純真ip地址數(shù)據(jù)庫 數(shù)據(jù)庫類 / 3.86M
查看 -
sql monitor(sql語句追蹤工具)中文版 v2.5.0.1綠色版 數(shù)據(jù)庫類 / 1.49M
查看 -
sql查詢分析器官方版 v2.9.4綠色版 數(shù)據(jù)庫類 / 1.09M
查看
專題推薦
本類排行
月排行總排行