目錄
- 系列教程
- 一、MySQL簡介
- 二、MySQL的發(fā)展歷史
- 三、MariaDB的基本使用
- 1、基本安裝與配置
- 2、客戶端命令:mysql
- 3、其他客戶端工具
- 4、安全加強腳本 mysql_secure_installation
系列教程
MySQL系列之開篇 MySQL關(guān)系型數(shù)據(jù)庫基礎(chǔ)概念
MySQL系列之一 MariaDB-server安裝
MySQL系列之二 多實例配置
MySQL系列之四 SQL語法
MySQL系列之五 視圖、存儲函數(shù)、存儲過程、觸發(fā)器
MySQL系列之六 用戶與授權(quán)
MySQL系列之七 MySQL存儲引擎
MySQL系列之八 MySQL服務(wù)器變量
MySQL系列之九 mysql查詢緩存及索引
MySQL系列之十 MySQL事務(wù)隔離實現(xiàn)并發(fā)控制
MySQL系列之十一 日志記錄
MySQL系列之十二 備份與恢復(fù)
MySQL系列之十三 MySQL的復(fù)制
MySQL系列之十四 MySQL的高可用實現(xiàn)
MySQL系列之十五 MySQL常用配置和性能壓力測試
一、MySQL簡介
MySQL原本是一個開放源代碼的關(guān)系數(shù)據(jù)庫管理系統(tǒng),原開發(fā)者為瑞典的MySQL AB公司,該公司于2008年被Sun公司收購。2009年,Oracle收購sun公司,MySQL成為Oracle旗下產(chǎn)品。
但被甲骨文公司收購后,Oracle大幅調(diào)漲MySQL商業(yè)版的售價,且甲骨文公司不再支持另一個自由軟件項目OpenSolaris的發(fā)展,因此導(dǎo)致自由軟件社區(qū)們對于Oracle是否還會持續(xù)支持MySQL社區(qū)版(MySQL之中唯一的免費版本)有所隱憂,MySQL的創(chuàng)始人麥克爾·維德紐斯以MySQL為基礎(chǔ),成立分支計劃MariaDB。而原先一些使用MySQL的開源軟件逐漸轉(zhuǎn)向MariaDB或其它的數(shù)據(jù)庫。
二、MySQL的發(fā)展歷史
作者:Monty 麥克爾·維德紐斯
- 1996年:發(fā)布MySQL1.0,開始是Solaris版本,后來又發(fā)布了Linux版本
- 1999年:Monty 在瑞典成立了 MySQL AB 公司
- 2003年:MySQL 5.0版本發(fā)布,增加了視圖、存儲過程等功能
- 2008年:被 sun公司 收購
- 2009年:Oracle 收購 sun
- 2009年:Monty 成立 MariaDB
版本的演變:
- MySQL:5.1 --> 5.5 --> 5.6 --> 5.7
- MariaDB:5.5 -->10.0--> 10.1 --> 10.2 --> 10.3
三、MariaDB的基本使用
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕松成為MySQL的代替品。在存儲引擎方面,10.0.9版起使用XtraDB(名稱代號為Aria)來代替MySQL的InnoDB。
由MySQL的創(chuàng)始人麥克爾·維德紐斯主導(dǎo)開發(fā),他早前曾以10億美元的價格,將自己創(chuàng)建的公司MySQL AB賣給了SUN,此后,隨著SUN被甲骨文收購,MySQL的所有權(quán)也落入Oracle的手中。MariaDB名稱來自麥克爾·維德紐斯的女兒瑪麗亞(英語:Maria)的名字。
插件式存儲引擎:也稱為“表類型”,存儲管理器有多種實現(xiàn)版本,功能和特性可能均略有差別;用戶可根據(jù)需要靈活選擇,Mysql5.5.5開始innoDB引擎是MYSQL默認引擎。MyISAM ==> Aria ,InnoDB ==> XtraDB
1、基本安裝與配置
安裝:yum install mariadb-server
主配置文件:從上到下檢查,如果有重復(fù)的配置參數(shù)則在后邊的配置文件中的參數(shù)生效,覆蓋檢索
/etc/my.cnf
/etc/mysql/my.cnf
/etc/sysconfig/my.cnf
/usr/local/etc/my.cnf
~/.my.cnf
查看默認配置:/usr/libexec/mysqld --print-defaults
默認數(shù)據(jù)庫庫文件存放目錄:/var/lib/mysql/
套接字文件:/var/lib/mysql/mysql.sock
PID文件:/var/run/mariadb/mariadb.pid
日志文件:/var/log/mariadb/mariadb.log
啟動服務(wù):# systemctl start mariadb.service
2、客戶端命令:mysql
選項:
-u root 指定用戶
-p password 指定密碼
-h host 指定連接主機
-A 禁止補全
-P port 指定端口,默認3306
-S socket文件路徑 默認:/var/lib/mysql/mysql.sock
-D databasename 指定默認數(shù)據(jù)庫
-C 啟用壓縮
-e SQL_CMD 執(zhí)行后退出
-V 查看版本
--print-defaults 查看默認設(shè)置
批處理模式
mysql /path/somefile.sql 將sql腳本導(dǎo)入數(shù)據(jù)庫執(zhí)行
交互式模式
客戶端命令
- \d|delimiter 設(shè)置語句結(jié)束符
- \c|clear 提前結(jié)束語句
- \r|connect 重新連接數(shù)據(jù)庫
- \g 直接將語句送服務(wù)器執(zhí)行
- \G 直接將語句送服務(wù)器執(zhí)行;結(jié)果縱向顯示
- .|source 讀入腳本文件創(chuàng)建數(shù)據(jù)庫
- ! COMMAND 執(zhí)行shell命令
- \W 語句執(zhí)行結(jié)束后顯示警告信息
- \w 語句執(zhí)行結(jié)束后不顯示警告信息
- \s 獲取當前系統(tǒng)狀態(tài)
- use database_name 指定操作的數(shù)據(jù)庫
- prompt \u@[\D] \r:\m:\s-> 修改提示符,如果需要永久修改則在my.cnf中 [mysql] 下加入 prompt="(\u@\h) [\d]>
- \q 退出
服務(wù)器命令:需要在命令后加命令結(jié)束符,默認結(jié)束符為分號";"
- help KEYWORD 獲取服務(wù)器命令的幫助
- select version(); 查看數(shù)據(jù)庫版本
- show variables; 顯示數(shù)據(jù)庫當前工作的環(huán)境變量
3、其他客戶端工具
- mysqldump:備份工具,基于mysql協(xié)議向mysqld發(fā)起查詢請求,并將查得的所有數(shù)據(jù)轉(zhuǎn)換成insert等寫操作語句保存文本文件中
- mysqladmin:基于mysql協(xié)議管理mysqld
- mysqlimport:數(shù)據(jù)導(dǎo)入工具
- myisamchk:檢查MyISAM庫
- myisampack:打包MyISAM表
- mysqld_safe:服務(wù)二進制程序
- mysqld_multi:創(chuàng)建多實例工具
4、安全加強腳本 mysql_secure_installation
這個腳本可以幫助我們做一下基本的安全加強
[root@centos7 mysql]# mysql_secure_installation
Enter current password for root (enter for none): #空密碼直接回車
Set root password? [Y/n] Y #設(shè)置root密碼
New password: ******
Re-enter new password: ******
Remove anonymous users? [Y/n] Y #刪除匿名賬戶
Disallow root login remotely? [Y/n] n #禁用遠程連接
Remove test database and access to it? [Y/n] Y #刪除test庫
Reload privilege tables now? [Y/n] Y #重讀授權(quán)表使其配置生效
[root@centos7 mysql]# mysql -uroot -p'your_password' #連接數(shù)據(jù)庫命令
到此這篇關(guān)于MySQL系列之三 基礎(chǔ)篇的文章就介紹到這了,更多相關(guān)MySQL 基礎(chǔ)篇內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- MariaDB(MySQL)創(chuàng)建、刪除、選擇及數(shù)據(jù)類型使用詳解
- Mysql的基礎(chǔ)使用之MariaDB安裝方法詳解
- centos 7安裝mysql5.5和安裝 mariadb使用的命令