二、資料庫使用者授權
三、忘記資料庫密碼如何修改
mysql> show databases;
+--------------------+
| database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)
mysql> use 資料庫名;
mysql> show tables;
+------------------+
| tables_in_school |
+------------------+
| info |
+------------------+
1 row in set (0.00 sec)
mysql> describe [資料庫名.]表名; ===>可以使用desc [資料庫名.]表名;
1.2.1 sql語言
1.2.2 sql分類
1.3.1 ddl語句可用於建立資料庫物件,如庫、表、索引等
1.3.2 使用ddl語句新建庫、表
mysql> create database 資料庫名;
mysql> create table 表名 (字段定義......);
create table 表名 (欄位01名稱 欄位01型別 欄位01約束,欄位02名稱 欄位02型別 欄位02約束,......)儲存引擎,字符集;
欄位01名稱: 屬性名稱,自定義
欄位01型別:
int(4): 整型 0000-9999
double 浮點型 8位元組
decimal(5,2) 有效數字是5位,小數點後面保留2位 100.00 099.50
float 單精度浮點 4位元組
char(10) 固定長度字串
varchar(50) 可變長度字串 可以超出
欄位01約束:
非空約束(not null) 內容不允許為空
主鍵約束(primary key) 非空且唯一 標識
預設值(default '未知') 加入沒有填資料,預設預先設定的值填寫
自增特性(auto_increment) id 從1開始
儲存引擎: innodb
字符集: utf-8
1.4.1 使用ddl語句刪除庫、表
mysql> drop table [資料庫名.]表名;
mysql> drop database 資料庫名;
insert: 插入新資料
update: 更新原有資料
delete: 刪除不需要的資料
mysql> insert into 表名(欄位1,欄位2,欄位3,......) values (欄位1的值,欄位2的值,欄位3的值,.....);
mysql> update 表名 set 欄位名1=值1[,欄位名2=值2] where 條件表示式;
mysql> delete from 表名 where 條件表示式;
mysql> delete from [資料庫名.]表名; ===>在當前資料庫裡面就可以不寫資料庫名
mysql> select 欄位名1,欄位名2,...... from 表名;
mysql> select 欄位名1,欄位名2,...... from 表名 where 條件表示式;
mysql> delete from table_name;
mysql> truncate table table_name;
臨時建立的表,用於儲存一些臨時資料,不會長期存在.
#連線斷開,臨時表被刪除
create temporary table mytest (
id int(3) not null auto_increment,
name varchar(10) character set utf8 collate utf8_bin notnull,
score decimal(5,2) not null,
address varchar(50) default '未知',
)engine=innodb default charset=utf8;
mysql> create table newtest as select * from test;
# like方法
mysql> create table newtest like test; ===>從test完整複製表的結構澀會給生成到newtest
mysql> insert into newtest select * from test; ===>匯入資料
# show create table方法
mysql> show create table test\g; ===>檢視表的完整結構 \g===>表示以列顯示
# 建立表newtest
mysql> create table newtest(......);
# 匯入資料
mysql> insert into newtest select * from test;
mysql> grant 許可權列表 on 資料庫名.表名 to 使用者名稱@@**位址 [identified by '密碼'];
#示例
mysql> grant select on auth.* to 'test'@'localhost' identified by '123456';
mysql> show grants for 使用者名稱@**位址;
#示例
mysql> show grants for 'test'@'20.0.0.20';
mysql> revoke 許可權列表 on 資料庫名.表名 from 使用者名稱@**位址;
#示例
mysql> revoke all on auth.* from 'test'@'20.0.0.20';
#配置檔案裡面設定語句進行跳過驗證
[root@localhost ~]# vim /etc/my.cnf
[mysqld]
......
skip-grant-tables ===>新增一條**
#進入mysql資料庫
mysql> use mysql;
mysql> update mysql.user set authentication_string=password('123456') where user='tom';
#修改好之後記得將之前新增的**刪除
MySQL理論 資料庫管理
1 檢視資料庫列表資訊 show databases 其中mysql為系統資料庫 2 檢視資料庫中的資料表資訊 1 進入資料庫 use musql 2 檢視資料表 show tables 3 顯示表結構資訊 字段 describe user 1 其中pri為主鍵 不能為空 定義 確定表中唯一實體物件...
資料庫 MySQL理論
儲存過程是乙個可程式設計的函式,它在資料庫中建立並儲存,它可以有sql語句和一些特殊的控制結構組成。當希望在不同的應用程式或者平台上執行相同的函式,或者封裝特定功能時,儲存過程是非常有用的。資料庫中的儲存過程可以看做是對程式設計中物件導向方法的模擬。它允許控制資料的訪問方式。b 樹 用於範圍查詢和單...
理論 MySQL資料庫管理(增 刪 改 查)
二 sql操作管理命令 mysql 是最流行的關係型資料庫管理系統,在 web 應用方面 mysql 是最好的 rdbms relational database management system 關聯式資料庫管理系統 應用軟體之一 mysql 是乙個關係型資料庫管理系統,由瑞典 mysql ab...