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 />
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 [email protected] 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 < [此目錄中的*.sql文件名]
運行cmd
cd d:/wamp/mysql/bin
mysql -h 127.0.0.1 -u root -D pubs -p <new_tb.sql;
上面就是用mysql把d:/wamp/mysql/bin/new_tb.sql文件加載到books數據庫,
注意:數據庫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
/***********************************************************/
mysql database manual(mysql數據庫手冊)
2019-11-25 16:31MYSQL教程網 Mysql
mysql database manual(mysql數據庫手冊),使用mysql的朋友可以參考下。
延伸 · 閱讀
- 2022-03-11MySQL的索引你了解嗎
- 2022-03-10面試中老生常談的MySQL問答集錦夯實基礎
- 2022-03-10淺談如何保證Mysql主從一致
- 2022-03-10Ubuntu18.04(linux)安裝MySQL的方法步驟
- 2022-03-09MySQL讓人又愛又恨的多表查詢
- 2022-03-09MySQL Server 層和存儲引擎層是怎么交互數據的?
- Mysql
Centos7下使用yum安裝mysql數據庫的詳細教程(增強版)
這篇文章主要介紹了Centos7下使用yum安裝mysql數據庫的詳細教程(增強版),非常不錯,具有參考借鑒價值,需要的朋友可以參考下 ...
- Mysql
MySQL server has gone away錯誤提示解決方法
今天遇到類似的情景,MySQL只是冷冷的說:MySQL server has gone away。 ...
- Mysql
解決重置Mysql root用戶賬號密碼問題
這篇文章主要介紹了解決重置Mysql root用戶賬號密碼問題,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下...
- Mysql
MySQL全文索引、聯合索引、like查詢、json查詢速度哪個快
這篇文章主要介紹了MySQL全文索引、聯合索引、like查詢、json查詢速度大比拼,通過實例代碼截圖的形式給大家介紹的非常詳細,具有一定的參考借鑒價值...
- Mysql
MySQL鎖的知識點總結
在本篇文章里小編給大家整理了關于MySQL鎖的知識點總結以及實例內容,需要的朋友們學習下。...
- Mysql
MySQL 查詢速度慢與性能差的原因與解決方法
隨著網站數據量與訪問量的增加,MySQL 查詢速度慢與性能差的問題就日漸明顯,這里為大家分享一下解決方法,需要的朋友可以參考下...
- Mysql
MySQL之Field‘***’doesn’t have a default value錯誤解決辦法
這篇文章主要介紹了MySQL之Field‘***’doesn’t have a default value錯誤解決辦法,需要的朋友可以參考下 ...
- Mysql
幾種MySQL中的聯接查詢操作方法總結
這篇文章主要介紹了幾種MySQL中的聯接查詢操作方法總結,文中包括一些代碼舉例講解,需要的朋友可以參考下 ...