MySQL資料庫基本知識

2022-07-07 02:00:29 字數 2784 閱讀 7164

1.1 表是資料庫的基本組成單元,所有的資料都以**的形式組織,目的是可讀性強。

1.2 表包括 行和列

1.2.1 行 :被稱為資料/記錄(data)

1.2.2 列 :被稱為字段(column)

1.3 每個欄位都有 名字 資料型別 相關的約束 等屬性。

1.4 mysql的兩個引擎

① myisam 資料庫的自帶的資料庫用,相比較 innodb 有自動統計行的特點。平常我們建表時,預設是innodb。

2.1 db :

​ database(資料庫,實際上在硬碟上以檔案的形式存在)

2.2 dbms

​ database management system(資料庫管理系統,常見的有 :mysql oracle db2)

2.3 sql

​ 結構化查詢語言,標準通用的語言。

2.4 關係:

​ dbms 負責執行 sql 語句,通過執行 sql 語句來操作 db 當中的資料

1.1 dql (資料查詢語言):

​ 查詢語句,凡是 select 語句都是 dql

1.2 dml (資料操作語言):

​ insert delete update 對錶當中的資料進行增刪改

1.3 ddl (資料定義語言):

​ create drop alter 對錶結構進行增刪改

1.3 tcl (事務控制語言):

​ commit 提交事務 ,rollback 回滾事務

1.4 dcl (資料控制語言):

​ grant 授權, revoke 撤銷許可權等。

4.1 登入 mysql 資料庫

mysql - uroot -p 密碼

mysql -u username -p -h ip -p 3306[埠號] //遠端連線

4.2 檢視資料庫
show databases; [這個不是 sql 語句,屬於 mysql 的命令]
4.3 建立屬於自己的資料庫
create database helloworld【名字】; [這個不是 sql 語句,屬於 mysql 的命令]
4.4 使用 helloworld 資料
use helloworld; [這個不是 sql 語句,屬於 mysql 的命令]
4.5 檢視當前使用的資料庫中有哪些表:
show tables; [這個不是 sql 語句,屬於 mysql 的命令]
4.6 初始化資料
source 檔案路徑;  //以 sql 結尾的檔案,被稱為 「sql 指令碼」,裡面寫了許多 sql 語句,可以使用 source 來執行 sql 指令碼,完成初始化。
4.7 檢視操作:
desc table1_name;    //檢視表結構 

show create table table1_name\g; //檢視建表語句

select user(); //檢視當前使用者

select database(); //檢視當前資料庫

select version(); //檢視當前mysql的版本

select status(); //檢視當前資料庫的狀態

select variables(); //檢視資料庫的引數

show processlist; //檢視當前mysql伺服器的佇列(使用較為頻繁)

4.8 修改資料庫的引數
select variables(); //檢視資料庫的引數

show variables like "arguments"; //檢視某個引數的值。

set global argumets = value1; //將引數(arguments)的值改為 value1。

4.9 授權使用者以及建立使用者
grant all【許可權:如 insert update 之類的,all 代表全部】 on *.*【表示這個使用者只能在那個資料庫中的那個表進行操作】 to 'usrname'@'ip'【該使用者只能通過個ip位址來登入】 identified by "passwd";

grant all on *.* to 'usrname'@'ip' identified by "passwd"; //建立相關使用者

show grants;//檢視授權

show grants for username@ip;//檢視指定授權

4.10 資料備份
mysqldump -u username -p passwd database_name [table1_name] > /tmp/mysql.sql //備份

mysql -u username -p passed database_name [table1_name] < /tmp/mysql.sql //匯入

[錯誤糾正]

[錯誤1: can't connect to local mysql server through socket]

在 /etc/my.cnf 中輸入以下字段:

[client]

default-character-set=utf8

socket=/tmp/mysql.sock

[mysql]

default-character-set=utf8

socket=/tmp/mysql.sock

並將 sql_mode=no_engine_substitution,strict_trans_tables 注釋掉!

MySQL資料庫的基本知識

表 乙個表是多個欄位的集合。字段 乙個欄位是一列資料,由欄位名和記錄組成。數值型別 int 有符號的和無符號的。有符號大小 21474836482147483647,無符號大04294967295。寬度最多為11個數字 int 11 tinyint 有符號的和無符號的。有符號大小 128127,無符...

資料庫基本知識

記錄集的游標型別 forwardonly指標一直向下走.移動速度快,但是不能儲存走過的記錄.資源占用少.主要運用在服務端.static 相當於造了乙個一摸一樣的副本.不管資料庫怎麼改,都是改的副本.真正的資料沒有改.最後直接 更新到真正的資料庫.靜態適合只是讀取資料庫中的資料.比如查詢.但編輯不適合...

資料庫基本知識

語句 1 語法 select 列名稱 from 表名稱 或 select from 表名稱 2,sqlcreate 語句 1 sql createtable語句 1 語法 create table 表名稱 列名稱1,資料型別,列名稱2,資料型別,列名稱3,資料型別 2 sql creatindex ...