mysql database manual(mysql資料庫手冊)
2.1登入到mysql控制檯[使用者名稱為root,密碼預設為空]
切換到mysql的bin目錄cd d:/wamp/mysql/bin
登入到mysql控制檯
語法:mysql -h hostname -u username -p
連線到另一臺主機
程式碼:mysql -h 192.168.1.1 -u root -p
password:直接按回車
連線到本機
程式碼:mysql -h 127.0.0.1 -u root -p
password:直接按回車
出現mysql>表示登陸到mysql控制檯成功
2.2退出mysql控制檯
mysql>exit;
3.1檢查所有mysql資料庫清單;
語法:mysql> show databases;
程式碼:mysql> show databases;
3.2顯示資料庫中所有表的清單
檢視當前資料庫中的表
語法1:mysql> show tables;
程式碼1:mysql> show tables;
3.3檢視其它資料庫jxc中的表
語法1:mysql> show tables from databasename;
程式碼1:mysql> show tables from jxc;
4.建立/刪除/選擇資料庫
建立jxc資料庫:
語法:mysql> create database databasename;
程式碼:mysql> create database jxc;
刪除jxc資料庫:
語法:mysql> drop database databasename;
程式碼:mysql> create database abc;
程式碼:mysql> drop database abc;
選擇jxc資料庫:
語法:mysql> use database;
程式碼:mysql> use jxc;
5檢視一個表的資料結構
5.1 describte檢視錶customers結構
語法1:mysql> describe tablename;
程式碼1:mysql> describe customers;
5.2.show columns檢視錶customers;結構
語法1:mysql> show columns from tablename;
程式碼1:mysql> show columns from customers;
5.3.檢視一個表的指定列名的資料結構
語法1:mysql> show index from tablename column;
程式碼1:mysql> show index from customers name;
5.4.檢視一個表customers的索引
語法1:mysql> show index from tablename;
程式碼1:mysql> show index from customers;
6.資料常用操作(select,insert,update,delete)
6.1 select選擇:
語法:select * from [表名1,表名1,,,] where [條件範圍]
程式碼:select * from orders where orderid>100;
6.2 insert插入
語法:insert into table1(column1,column,,,) values(value1,value2,,,);
程式碼:insert into books(isbn,author,title,price) values('iso-902126','jahn.D','mysql6.0',99.0);
6.3 update 更新:
語法:update table1 set [列名]=[新資料] where [條件範圍]
程式碼:update books set title="Thinking in Java" where isbn='iso-902126';
6.4刪除:
語法:delete from [表名] where [條件範圍]
程式碼:delete from books where isbn='iso-902126';
6.5其它方法
查詢:select * from table1 where field1 like '%value1%' ---like的語法很精妙
排序:select * from table1 order by field1,field2 [desc]
總數:select count as totalcount from table1
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1
7.用grant建立資料庫的使用者和許可權
GRANT命令語法:
GRANT [許可權列表1],[許可權列表2]
ON [資料庫.表名]
TO [使用者名稱@主機名]
IDENTIFIED BY '密碼';
程式碼實現1:
grant select,insert,delete,update
on discuz.* to jake@localhost
identified by '201314';
功能說明
把在資料庫discuz所有表的select,insert,delete,update這4個許可權
新增到新使用者jake,密碼為'201314';
程式碼實現2:
grant all
on discuz.* to tom@localhost
identified by '123456';
把在資料庫discuz全部許可權所有表新增到新使用者tom,密碼為'123456';
[許可權列表1]選項如下
select 表,列
insert 表,列
udpate 表,列
delete 表
index 表
alter 表
create 資料庫,表
drop 資料庫,表
[許可權列表2]選項如下
create temporary tables 允許使用temporary關鍵字
file 允許資料庫匯入和匯出到檔案
lock tables 允許使用lock talbes命令
reload 允許重新載入授權表
show databases 允許檢視所有的資料庫清單
shutdown 允許使用關閉MYSQL
all 上面所以許可權
usage 允許只登入,但不允許任何操作
[資料庫.表名]選項如下
資料庫.表名 選擇資料庫中一個表給XX使用者
資料庫.* 選擇資料庫中所有表給XX使用者
8.revoke取消使用者和使用者許可權
revoke格式:
revoke [許可權列表1],[許可權列表2] privileges,[columns]
ON [資料庫.表名]
FROM [使用者名稱@主機名]
程式碼:
先授權給laoliu(老劉)
grant all
on books.*
to laoliu
identified by 'laoliu11';
撒去一部分許可權
revoke alter,create,drop
on books.*
from laoliu;
撒去laoliu的所有許可權
revoke all
on books.*
from laoliu;
9.新增MYSQL使用者其它方法
shell> mysql -u root -p1234 mysql
mysql> insert into user(Host,User,Password) values ('localhost','backup','databse');
新增一個來自本機的mysql 使用者backup,口令為:1234
shell>mysql –u root –p
mysql>GRANT FILE ON *.* TO backup@192.168.1.200 IDENTIFIED BY '1234';
mysql>/exit
開放一個賬號backup密碼1234給來自IP:192.168.1.200有檔案處理的許可權
10.建立表/修改表/刪除表//最佳化表
10.1建立表
語法:create table tablename(columns,...)
程式碼:
create table order_items
(orderid int unsigned not null,
isbn char(13) not null,
quantity tinyint unsigned,
primary key (orderid,isbn)
);
10.2修改表
10.2.1新增/刪除一列
語法:alter table [表名] add column [列名] [型別];
在表中新增一列remark
程式碼:alter table order_items add column remark char(50);
刪除一列
語法:alter table [表名] drop column [列名];
從表中刪除一列remark
alter table order_items drop column remark;
10.2.2新增/刪除主鍵
新增orderid,isbn為主鍵
語法:alter table [表名] add primary key [列名1,列名1];
程式碼:alter table order_items add primary key (orderid,isbn);
刪除主鍵
語法:alter table [表名] drop primary key
程式碼:Alter table tabname drop primary key
10.2.3建立/刪除索引
建立索引
語法:create index [索引名] on [表名] (列名);
程式碼:create index orderid_ix on orders (orderid);
刪除索引
語法:drop index [索引名] on [表名] (列名);
程式碼:drop index orderid_ix on orders;
10.3刪除表:
刪除表
語法:drop table [表名]
程式碼:drop table orders;
10.4最佳化表:
當一個表的資料有上萬行,訪問速度變慢,就必須為它們進行最佳化
通常的方式是做出一個optmize.sql檔案,
直接匯入這個最佳化指令碼檔案進行批次最佳化一些關鍵的表,以提高訪問速度
最佳化表customers資料(customers)
語法:mysql>optmize table tablename;
程式碼:mysql>optmize table customers;
10.5 用命令列載入一個new_tb.sql檔案
從而讓MYSQL一次批次執行上*SQL檔案中的在量的sql語句
1.文字檔案做好sql命令集合,然後複製到命令列一個個的執行
2.如果表太多的話,直接存為*.sql檔案,然後用命令裝入檔案
格式: mysql -h [主機IP] -u [使用者名稱] -D [資料庫名] -p 執行cmd
cd d:/wamp/mysql/bin
mysql -h 127.0.0.1 -u root -D pubs -p
注意:資料庫pubs必須存在和-D要大寫
new_tb.sql檔案內容(此檔案的SQL命令是可以存1000條以上的)
create table customers
(customerid int unsigned not null auto_increment primary key,
name char(50) not null,
address char(100) not null,
city char(30) not null
);
create table orders
(orderid int unsigned not null auto_increment primary key,
customerid int unsigned not null,
amount float(6,2),
date date not null
);
create table books
(isbn char(13) not null primary key,
author char(50),
title char(100),
price float(6,2)
);
create table order_items
(orderid int unsigned not null,
isbn char(13) not null,
quantity tinyint unsigned,
primary key (orderid,isbn)
);
create table book_reviews
(isbn char(13) not null primary key,
review text
);
執行OK後,再進行檢查表是否自動建立OK?
c:>mysql -h 127.0.0.1 -u root -p
mysql>show tables from pubs;
結果顯示以上5個表都已經建立OK;
11.表的檢視建立與刪除
建立檢視
語法:create iview [檢視名] as [select 語句);
程式碼:create view v_orders as select * from orders;
刪除檢視
語法:drop iview [檢視名]
程式碼:create view v_orders
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4687/viewspace-2803842/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 4、MySQL建立資料庫(CREATE DATABASE語句)MySql資料庫Database
- MySQL資料庫出現 Ignoring query to other databaseMySql資料庫Database
- 6、MySQL刪除資料庫(DROP DATABASE語句)MySql資料庫Database
- MySQL 8.0 Reference Manual(讀書筆記56節--Optimizing Database Structure)MySql筆記DatabaseStruct
- Python與資料庫的新人手冊 -- MySQLPython資料庫MySql
- Python與資料庫的新人手冊 — MySQLPython資料庫MySql
- [資料庫]【MySQL】MySQL資料庫規範總結資料庫MySql
- 【MySQL 資料庫】MySQL目錄MySql資料庫
- MySQL預設資料庫之mysql庫MySql資料庫
- 資料庫(MySQL)資料庫MySql
- MYSQL資料庫MySql資料庫
- 資料庫-MySQL資料庫MySql
- 資料庫 MySQL資料庫MySql
- Hadoop之Hive本地與遠端mysql資料庫管理模式安裝手冊HadoopHiveMySql資料庫模式
- MySQL資料庫遷移與MySQL資料庫批量恢復MySql資料庫
- Mysql資料庫-資料模型MySql資料庫模型
- MySQL資料庫資料管理MySql資料庫
- MySQL 資料庫操作MySql資料庫
- MySQL資料庫(二)MySql資料庫
- 【6】MySQL資料庫MySql資料庫
- Mysql建立資料庫MySql資料庫
- MySQL手動資料校驗+雲資料庫資料校驗MySql資料庫
- MySQL資料庫初識——初窺MySQLMySql資料庫
- MySQL(二):快速理解MySQL資料庫索引MySql資料庫索引
- 寶塔資料庫恢復 mysql資料庫丟失恢復 mysql資料庫刪除庫恢復 寶塔mysql資料庫恢復資料庫MySql
- (詳細)ubuntu18.04建立mysql資料庫並本地database遠端連線UbuntuMySql資料庫Database
- mysql資料庫-資料結構MySql資料庫資料結構
- mysql到sqlserver資料庫實時同步工具syncnavigator註冊使用MySqlServer資料庫
- MySQL資料庫6:Go與MySQL事務MySql資料庫Go
- 查詢MySQL資料庫,MySQL表的大小MySql資料庫
- MySQL資料庫健康檢查--MySQL巡檢MySql資料庫
- MySQL(一):MySQL資料庫事務與鎖MySql資料庫
- mysql 資料庫 備份MySql資料庫
- django 配置mysql資料庫DjangoMySql資料庫
- MySQL資料庫優化MySql資料庫優化
- MySQL資料庫之索引MySql資料庫索引
- Mysql資料庫操作命令MySql資料庫
- MySQL資料庫總結MySql資料庫