做者 | Jeskson前端
來源 | 達達前端小酒館mysql
MySQL管理,數據庫管理和數據表管理,用戶管理。web
初始化數據庫,建立數據庫,查看數據庫,刪除數據庫。算法
建立數據表,查看數據表,修改數據表,刪除數據表。sql
用戶管理,建立與刪除用戶,授予與回收用戶權限,設置與更改用戶密碼。數據庫
初始化數據庫windows
mysqld --initialize
啓動數據庫:服務器
使用windows服務器管理界面啓動;或使用MySQL命令啓動。網絡
mysql -u root -p
建立數據庫數據結構
CREATE DATABASE
語句用於建立一個新的數據庫
CREATE DATABASE [db_name];
// 建立一個名爲dada的數據庫 create database data;
數據庫建立好後,會在data
目錄下自動生成一個名爲data
的目錄,該數據庫的數據會存儲於此目錄下,MySQL
是一個數據庫管理系統,支持運行多個數據庫。
查看數據庫
SHOW DATABASES
show databases;
刪除數據庫
DROP DATABASE db_name;
drop database dada; // 刪除dada數據庫
刪除數據庫是一個不可逆的操做。
MySQL
的每一個數據庫就至關於一個容器,裏面放着不少許多表,表中的每行包含一條具體的數據關係信息,爲數據記錄。在data
目錄下,每一個數據庫對應一個目錄。
每一個數據表對應3個文件,分別爲".frm","myd",".myi"類型的文件。
建立數據表:
USE 數據庫名; CREATE TABLE 表名(字段名 類型(長度),字段名 類型(長度));
查看數據表
SHOW語句和DESCRIBE語句 // 查看數據庫中有哪些表 SHOW TABLES; // 此命令能夠列出全部表名 show tables; // DESCRIBE DESCRIBE 庫名.表名; 使用DESCRIBE語句能夠查看某一個表的具體結構,並查看組成表的各字段的信息
use mysql; describe user;
使用describe語句能夠查看錶的各個字段名稱,類型,長度,是否非空,是否有主鍵,默認值以及備註等信息。
修改數據表
修改數據表使用ALTER語句來實現,alter,修改表,包括修改表的名,字段的名,字段類型等表結構。
修改表名
ALTER TABLE 舊錶名 RENAME 新表名;
ALTER TABLE student RENAME student1;
修改字段名:
ALTER TABLE 表名 CHANGE 舊屬性名 新屬性名 新數據類型;
ALTER TABLE student1 CHANGE name s_name varchar(50);
修改字段類型
ALTER TABLE 表名 MODIFY 屬性名 數據類型;
ALTER TABLE student1 MODIFY name varchar(2);
增長字段:
ALTER TABLE 表名 ADD 屬性名 數據類型;
ALTER TABLE student1 ADD sex char(1)
刪除字段:
ALTER TABLE 表名 DROP 屬性名;
ALTER TABLE student1 DROP sex;
刪除數據表
USE 數據庫名; DROP 表名;
使用DROP
語句能夠刪除數據庫中的表
DROP TABLE 數據庫名.表名;
USE test; DROP TABLE student1;
DROP TABLE test.sudent1;
mysql
用戶管理建立與刪除用戶
建立用戶
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
username
表名要建立的用戶名
host
表示在哪一個主機上能夠登陸
CREATE USER 'test1'@'localhost' IDENTIFIED BY '123';
CREATE USER 'test2'@'192.123.2.2' IDENTIFIED BY '12';
CREATE USER 'test3'@'%' IDENTIFIED BY ''; // identified
用戶刪除
DROP USER 'username'@'host';
刪除用戶的語法與建立用戶的語法相同
DROP USER 'test1'@'localhost';
刪除本地主機數據庫用戶
能夠對用戶進行受權:
GRANT privileges ON dbname.tablename To 'username'@'host';
privileges
表示要授予用戶的操做權限
dbname
表示數據庫名
tablename
表示數據表名
username
和host
分別表示用戶名和登陸主機
GRANT SELECT, INSERT ON mysql.test TO 'test1'@'%';
表示受權用戶test1
在全部登陸主機均對mysql
庫的test
表擁有select
和insert
權限。
GRANT ALL ON *.* TO 'test2'@'localhost';
若是要授予用戶對全部數據庫和表的相應操做權限,可用「*」表示,如「*.*」。
回收用戶權限
REVOKE privileges ON databasenamme,tablename FROM 'username'@'host';
REVOKE SELECT ON *.* FROM 'test2'@'localhost';
回收用戶test2
在本地主機數據庫對全部庫的全部表的SELECT權限
設置與更改用戶密碼
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');;
username
爲要設置或更改密碼的用戶名
host
爲用戶的登陸主機
newpassword
爲設置或更改的密碼
SET PASSWORD FOR 'test1'@'localhost' = PASSWORD('123');
做者Info:
【做者】:Jeskson
【原創公衆號】:達達前端小酒館。
【福利】:公衆號回覆 「資料」 送自學資料大禮包(進羣分享,想要啥就說哈,看我有沒有)!
【轉載說明】:轉載請說明出處,謝謝合做!~
大前端開發,定位前端開發技術棧博客,PHP後臺知識點,web全棧技術領域,數據結構與算法、網絡原理等通俗易懂的呈現給小夥伴。謝謝支持,承蒙厚愛!!!
若本號內容有作得不到位的地方(好比:涉及版權或其餘問題),請及時聯繫咱們進行整改便可,會在第一時間進行處理。
這是一個有質量,有態度的博客