mysql自學基礎

2021-08-19 14:19:15 字數 4747 閱讀 2978

mysql

檢視庫列表

>show databases;

使用庫》use mysql;

檢視庫中的資料表資訊

>show tables;

顯示資料表結構

>describle mysql.user;

檢視使用者

>describe user;

create

建立新庫名字為auth

>create database auth;

使用這個資料庫

>use auth;

建立表》create table users(user_name char(20),user_passwd char(30) default",primary key(user_name));

drop

>drop table auth.users;

刪除auth庫的

users

表》drop database auth;

刪除auth資料庫

insert

格式:insert into 表明(字段

1,字段

2……)

values(欄位1

的值,欄位2的值

)示例:use auth;

desc users;

>inseret into users(user_name,user_passwd)values('zhangsan',password('123123'));

>insert into users values('lisi',password('123456'));

>select * from users;

update

>update mysql.user set password=password('123123')where user='root';

>flush privileges;

delete

>delete from auth.users where user_name='lisi';

>select * from auth.users;

select

>select * from auth.users;

>select user_name from auth.users;

>select * from auth.users where user_name='zhangsan'

grant

>grant all on *.* to

『root』@

』192.168.1.1

』identified

by 『

666666』;

>grant select on impoyee_salary.* to

『amber』@

』localhost

』identidied by

『123456』;

>flush privileges;

檢視使用者許可權

>show grants;

>show grants for

『amber』@

』192.168.1.108』;

撤銷使用者許可權

>revoke select on imployee_salary.* from

『amber』@

』localhost』;

備份操作

格式:mysqldump -u 使用者名稱

-p密碼

[資料庫名

][表名

] >/

備份路徑

/備份檔案名

>musqldump -u root -p mysql user > mysql-user.sql

建立唯一索引

>create index 《索引的名字

> on <

表名》                   

索引名字格式  

_index

>show index from 表名

\g或者

show keys from

表名 \g

刪除索引

>drop index 索引名

on 表名

事務性特點

原子性一致性

隔離性永續性

begin 開始

commit

提交rollback

回滾》use auth; #使用庫

>begin;   #事物開始

>insert into users values();

>commit;  #事物結束並提交

>select * from users;

回滾(從

begin

開始的所有命令都被撤銷

)>begin;

>update users set user_passwd=pwssword(

『』)where user_name=

』lisi』;

>rollback;

>select * from users;

自動提交與非自動提交

>set autocommit = 0;

#=0為禁止

>use auth;

>insert into users values(內容

)>commit;

#提交前面的

sql語句

>set autocommit = 1;

>use auth;

>insert into users values (內容

);>select * from users;

mysql 資料賬號管理

>select user,host,password from mysql.user;

檢視》create user

』admin』@

』%』identified by

『123123』;

建立使用者

>drop user

『admin』@

』%』;

刪除使用者

mysql使用者授權

>grant all on *.* to

『amber』@

』%』identified by

『123123』;

>grant select on mysql.user to

『amber』@

』192.168.1.%

』identified by

『123123』;

>show grants;

檢視授權所有使用者

>show grants for

『amber』@

』%』;

檢視授權單一使用者

撤銷許可權

>revoke drop,create on *.* from

『amber』@

』%』;

撤銷 drop,create許可權

>revoke all on *.* from

『amber』@

』%』;

撤銷所有許可權

mysql日誌管理

日誌路徑:mysql/data/mysql_error.log

mysql/data/mysql_general.log

二進位制日誌

用來恢復資料庫

慢查詢日誌

用來查詢執行時間長的查詢

在/etc/my.cnf下新增【

mysqld

】/nlong_query_time=5/nlog-slow-query=mysql_slow.log

mysql備份

對所有庫進行備份

mysqldump -uroot -p123123 --opt --all-databases >/backup/mysql_all.$(date +%y%m%d).sql

--opt

加快備份速度

對多個庫進行備份

mysqldump -uroot -p123123 --databases mysql auth >/backup/mysql+auth.$(date +%y%m%d).sql

對錶進行備份

mysqldump -uroot -p123123 auth user >/backup/auth_user-$(date +%y%m%d).sql

備份恢復

登入mysql資料庫

>source /backup/mysql_all.2018.4.1sql;

不登入備份恢復

mysql -uroot -p123123 -e

『drop database auth;

』mysql -uroot -p123123 < /backup/mysql_all.2018.4.1sql;

增量備份

mysqladmin -uroot -p 123123 flush-logs

#日誌回滾

增量恢復

mysqlbinlog --no-defaults /m  ysql_bak/mysql-bin.00000x | mysql -uroot -p123123

基於時間點的恢復

先檢視二進位制日誌

mysqlbinlog --no-defaults /mysql_bak/mysql-bin.0000006

#裡面有時間相關記錄

恢復mysqlbinlog --no-defaults --start-datetime=

』2016-05-03 15:15:15

』/mysql_bak/mysql-bin.0000006|mysql -uroot -p123123

mysql自學完整 MySQL自學篇 MySQL

建立資料表 1 建立資料表的語法格式 資料表屬於資料庫,在建立資料表之前要使用 use 指定操作是在哪個資料庫中進行的,如果沒有選擇資料庫,將會出現 no database selected 的錯誤 建立資料表的語句為 create table 語法規則為 create table 欄位1 資料型別...

mysql自學完整 MySQL自學篇(八)

2 字串函式 1 計算字串字元數的函式和字串長度的函式 char length str 返回字串str所包含的字元個數。乙個多位元組字元字元算作乙個單字元 select char length date char length egg char length 中國 2 合併字串函式concat s1...

MySQL自學筆記1 基礎知識

使用mysql 5.5以及mysql自帶命令客戶端 層次結構 資料庫伺服器 n多資料庫 n多表 行與列 大概步驟 1.建立 連線資料庫伺服器 1.建立庫 1.建立表 1.資料庫操作,比如增刪改查等 刪除表 drop table tablename 修改表名 rename table oldname ...