資料基礎應用:
表:create table [if not exists] 'tbl_name' (col1 type1, col2 type2, ...)
col type1
primary key(col1,...)
index(col1, ...)
unique key(col1, ...)
表選項:
engine [=] engine_name
row_format [=]
show engines;
獲取幫助:
mysql> help create table;
檢視建立命令:
show create table tbl_name;
檢視表狀態:
show table status like 'tbl_name'\g
drop table [if exists] 'tbl_name';
alter table 'tbl_name'
字段:新增字段:add
add col1 data_type [first|after col_name]
刪除字段:drop
修改字段:alter, change, modify
索引:新增索引:add
刪除索引: drop
表選項修改:
檢視表上的索引:show indexes from [db_name.]tbl_name;
索引: 索引是特殊資料結構;定義在查詢時作為查詢條件的字段;
索引:要有索引名稱;
建立索引:
create index index_name on tbl_name (index_col_name,...);
刪除索引:
drop index index_name on tbl_name;ml: insert, delete, select, update
insert into:
insert [into] tbl_name [(col_name,...)] (val1,...),(...),...
select:
select col1,col2,... from tbl_name [where clause] [order by 'col_name' [desc]] [limit [m,]n];
字段表示法:
*: 所有字段;
as:字段別名,col1 as alias1;
where clase:
操作符:
>, =, <=, ==, !=
between ... and ...
like:
%:任意長度的任意字元;
_:任意單個字元;
rlike:
正規表示式模式匹配;
is null
is not null
條件邏輯操作:
andor
notdelete:
delete from tbl_name [where clause] [order by 'col_name' [desc]] [limit [m,]n];
update:
update tbl_name set col1=new_val1, col2=new_val2, ... [where clause] [order by 'col_name' [desc]] [limit [m,]n];戶賬號及許可權管理:
使用者賬號:'user'@'host'
user: 使用者名稱
host: 此使用者訪問mysqld服務時允許通過哪些主機遠端建立連線;
ip、網路位址、主機名、萬用字元(%和_);
禁止檢查主機名:
my.cnf, [mysqld]
skip_name_resolve = yes
建立使用者賬號:
create user 'username'@'host' [identified by 'password'];
刪除使用者:
drop user 'username'@'host';
授權: 許可權級別:管理許可權、資料庫、表、字段、儲存例程;
grant priv_type,... on [object_type] db_name.tb_name to 'user'@'host' [identified by 'password'] [with grant option];
priv_type: all [privileges]
db_name.tb_name:
*.*: 所有庫的所表;
db_name.*: 指定庫的所有表;
db_name.tb_name: 指定庫的指定表;
db_name.routine_name:指定庫的儲存例程;
檢視指定使用者獲得的授權:
show grants for 'user'@'host';
show grants for current_user;
**授權:
revoke priv_type, ... on db_name.tb_name from 'user'@'host';
注意:mariadb服務程序啟動時會讀取mysql庫中的所有授權表至記憶體中;
(1) grant或revoke等執行許可權操作會儲存於表中,mariadb的服務程序會自動重讀授權表;
(2) 對於不能夠或不能及時重讀授權表的命令,可手動讓mariadb的服務程序重讀授權表:
mysql> flush privileges;
mariadb資料型別
mariadb 資料型別 mariadb資料型別可以分為 數字,日期和時間以及字串值。使用資料型別的原則 夠用就行,盡量使用範圍小的,而不用大的 a.整數 int,bit b.小數 decimal decimal 5,2 c.字串 varchar,char e.列舉型別 enum eg 下拉列表 c...
資料庫基礎 1 (安裝與操作mariadb)
為了看陽光 我來到世上 資料庫是乙個存放資料的倉庫,目前市面上最流行的資料庫大致氛圍的兩種,一種叫做關係型資料庫,一種叫做非關係型資料庫,而關係型資料庫近期流行的即為mysql,mysql原本是乙個開源的資料庫後被oracle公司收購,開始進行服務收費,因此,市面上大多數免費的類mysql資料庫為m...
你好!MariaDB資料庫
我們最熟知的資料庫莫過於mysql,開源給了他親民的一面,但是它被甲骨文收購以後呢,mysql的能否繼續開源下去成了大家茶前飯後所顧慮的問題,同樣,mysql的創始人widenius 麥可 維德紐斯 先生也在擔心這個問題,他覺得依靠sun oracle來發展mysql,實在很不靠譜,於是決定另開分支...