MySQL-基礎學習(一)

之前自學了數據庫基礎的部分,拿出來分享一下。

首先說明本人用的是MySQL8.0.17的版本,8版本和之前的版本有些地方可能不太一樣;

如果MySQL不會安裝的可以參考菜鳥教程的安裝方法;

mysql語法裏的大小寫是一樣的沒有特別規定,同時需要注意的是在MySQL裏輸入語法後要輸入 ; 的,直接回車無法執行,
首先來了解一下MySQL的大體結構

在這裏插入圖片描述
數據庫的連接,退出,創建,刪除

連接數據庫
-u : 指定登陸MySQL的用戶 root最大權限的用戶
-p : 顯示密碼登陸

mysql -u root -p

退出數據庫

exit

創建數據庫

create database 數據庫名;

刪除數據庫

drop database 數據庫名;

mysql5.7以上有的有密碼策略(mysql只能設置複雜密碼,弱密碼無法設置),可進行調整

查詢當前密碼策略信息

show variables like 'validate_password%';

密碼政策設置低

set global validate_password_policy=0;

密碼位數隨意6位

set global validate_password_length=6;

用戶的查看,創建,分權,查權,使用,改密,刪除

查看mysql裏的所有用戶

select user from mysql.user;

創建用戶
本機電腦的MySQL,Host設置localhost就行(最好使用這個本地)

create user '用戶名'@'localhost' identified by '密碼';

服務器安裝的MySQL,需要遠程外連Host設置 %

create user '用戶名'@'%' identified by '密碼';

給普通用戶分配權限
grant all : ☞全部權限,此處可以指定某些權限;
數據庫名.* : ☞數據庫下的所有表,此處可以指定表;

grant all on 數據庫名.* to '用戶名';

查看用戶權限

show grants for '用戶名';

創建了普通用戶分權後就可以用了

mysql -u 用戶名 -p

由於版本過高有的圖形化界面連接會提示caching-sha2-password密碼策略問題,修改加密規則

alter user 用戶名 identified by 'password' password expire never;

修改用戶密碼

alter user 用戶名 identified with mysql_native_password by '改後密碼';

刷新權限

flush privileges;

刪除用戶兩種方法

drop user 用戶名;
delete from user where user='用戶名'

進入數據庫後先指定數據庫

use 數據庫名;

查看所有的數據庫(此處注意用戶,root能看所有的數據庫,普通的只能查看授權的數據庫)

show databases;

查看數據庫下的表(使用此語法的注意先用use指定數據庫)

show tables;

創建表結構;
if not exists : ☞判斷數據庫中是否有此表(有無此語法都可以);
id,name,age : ☞表字段名;
int,varchar(4) : ☞數據類型(字節);
auto_increment : ☞自增;
not null : ☞此處數值不能爲null;
default : ☞默認數值;
comment : ☞描述;
primary key(id) : 設置id爲鍵(唯一的);
語法注意;
實例中以 , 來分割表字段名與表字段名之間的參數;
直到看到 ; 纔是結束,

create table if not exists 表名(
id int auto_increment,
name varchar(4) not null comment '姓名',
age int(4) default '年齡不祥' comment '姓名',
primary key(id)
);

查看錶結構

desc 表名;

查看錶結構語法

show create table 表名\G
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章