是用戶存放數據、訪問數據、操作數據的存儲倉庫,用戶的各種數據被有組織的存放在數據庫中。可以隨時被有權限的用戶查詢、統計、添加、刪除、和修改,是長期存儲在計算機內的,有組織、可共享的數據集合。
二、數據模型
Connectors -----指的是不同語言中與SQL的交互
Management Serveices & Utilities -----系統管理和控制工具
Connection Pool -----連接池。管理緩衝用戶連接,線程處理等需要緩存的需求
SQL Interface -----SQL接口,接受用戶的SQL命令,並且返回用戶需要查詢的結果。比如select from就是調用SQL Interface
Parser -----解析器。SQL命令傳遞到解析器的時候會被解析器驗證和解析。
Optimizer -----查詢優化器。SQL語句在查詢之前會使用查詢優化器對查詢進行優化。
Cache和Buffer -----查詢緩存。如果查詢緩存有命中的查詢結果,查詢語句就可以直接去查詢緩存中取數據.
Engine -----存儲引擎。存儲引擎是MySql中具體的與文件打交道的子系統。
RHEL6: service mysql start|stop 或 /etc/init.d/mysql start|stop
RHEL7: systemctl start|stop mysql
2、登錄與退出
mysql -u user_name -ppassword -h host_name
h:連接MySQL不在本機時,填寫主機名或IP地址
u:登錄MySQL用戶
p:登錄MySQL的密碼
注意:密碼寫在命令行時一定不能有空格
3、設置及修改MySQL root用戶密碼
沒有密碼時設置: mysqladmin -uroot password '123456'
修改root密碼:
方法1:mysqladmin -uroot -p'123456' password
方法2:update mysql.user set password=password('111') where user='root';
#新版的mysql數據庫下的user表中已經沒有Password字段了
>use mysql
>update user set authentication_string=password('123456') where user='root' and Host = 'localhost';
提示:此法適合在配置文件中添加skip-grant-tables的方式修改密碼。
重啓mysql服務,修改密碼生效。
方法3:set password=password('123');
root密碼遺忘:
安全模式啓動,跳過權限表,然後使用方法2修改
killall mysqld 或 systemctl stop mysql
mysqld_safe --skip-grant-table &