Mysql 二 資料庫基本操作

2021-08-27 18:40:04 字數 4537 閱讀 8413

檢視當前使用者 :

select host,user from mysql.user;
1.mysql 建立使用者 :

create user test identified by '123456'
2.授權遠端登陸:

grant all privileges on *.* to 'test'@'%'identified by '123456' with grant option;
3.重新整理mysql使用者許可權相關表;

flush privileges ;
4.修改配置檔案中的 bind

bind-address = 0.0.0.0
5.重啟mysql

server mysqld restart
修改使用者密碼 :

update user set password=password('admin123') where user='test';
如果出現錯誤 :

error 1054 (42s22): unknown column 'password' in 'field list'

這是因為 mysql 版本問題, 改為使用一下語句修改即可 :

update mysql.user set authentication_string=password('admin123') where user='test' ;
修改完之後重啟mysql即可 :

service mysql restart
一、建立一張表

建立一張表的時候可以【預留一些字段】,你只要不使用就行,為的就是以後如果需求有變時不用更改表結構,只要對這個欄位就行操作就行(如果增加欄位就把預留的字段利用起來.可以修改 欄位名稱、改變字段型別都行,如果刪除欄位就把 要輸出 的字段不再 在sql 語句中操作就行)。

二、邏輯刪除

某些重要的資料【不能真正的刪除】,可以在設計表的時候給他乙個標誌位,用於判斷該資料是否有效,預設為有效,如果要刪除這條資料就把他設定 為無效。

sql 語句

一、資料庫 操作

mysql 登入 :

mysql -u root -p
輸入密碼

1.顯示當前所有的資料庫

show databases;
2. 建立資料庫

create database 資料庫名 charset=utf8; (charset=utf8 這個是指定資料庫字符集)
3.刪除資料庫

drop databases 資料庫名;
4.切換資料庫

use 資料庫名;
5. 檢視當前選擇的資料庫

select database();
二、 表操作

1.檢視當前資料庫中所有的表

show tables;
2.建立表

create table 表名(列及型別);
auto_increment 表示自動增長。例如:

create table student(id int auto_increment primary key,

name varchar(10) not null,

gender bit default 1,

brithday datetime);

3.檢視表結構

desc 表名;
例如 :

desc student; 輸出如下

| field | type | null | key | default | extra |

| id | int(11) | no | pri | null | auto_increment |

| name | varchar(10) | no | | null | |

| gender | bit(1) | yes | | b'1' | |

| brithday | datetime | yes | | null | |

4 rows in set (0.00 sec)

4.修改表

alter table 表名 add|change|drop 列名 型別;
例如 :

alter table student add isdelete bit default 0;
【這個修改表盡量通過在設計表結構的時候通過預留欄位來避免,因為表和表中資料已存在的情況下 再去 做這個操作很多情況下都會報錯,也可能導致之前的資料沒了】

5.刪除表

drop table 表名;
6.更改表名

rename table 原表名 to 新 表名;
例如:

rename table student to mystudent;
7.檢視表的建立語句

show create table 表名;
例如 :

show create table student;
三、資料操作

1.查詢

select * from 表名;
2.增加

全列插入:insert into 表名 values(...)

例如:

insert into students value (0,'郭靖',1,'1994-02-14',0);
預設插入:insert into 表名(列1,...) values(值1,...)

例如 :

insert into students (name,brithday) value ('黃蓉','1994-02-14');
同時插入多條資料:insert into 表名 values(...),(...)...;

例如 :

insert into students value (0,'楊過',1,'1994-02-14',0),(0,'小龍女',1,'1994-02-14',0);
或insert into 表名(列1,...) values(值1,...),(值1,...)...;

例如 :

insert into students (name,brithday) value ('黃藥師','1994-02-14'),('洪七公','1994-02-14');
【主鍵列 是自動增長的,但是在全列 插入時需要佔位,通常使用 0 ,插入成功後以實際資料為準】

3.修改

updete 表名 set 列1=值1,...where 條件;

例如 :

update students set name='雕' where id=5;
4.刪除 【這個是物理刪除,刪除了就沒了】

delete from 表名 where 條件;

例如 :

delete from students where id = 6;
【如果沒有給條件,那麼 所有的資料就都被刪除了!!!】

四、備份與恢復 【把資料 從乙個伺服器移動到另外乙個伺服器】

1.資料備份

進入超級管理員

sudo -s

進入 mysql 庫目錄

cd /var/lib/mysql

執行 mysqldump 命令

mysqldump -uroot -p 資料庫名 > ~/備份檔案.sql;

即 mysqldump -uroot -p 資料庫名 > 備份的檔案的路徑加檔名;

按提示輸入 mysql 的密碼

此時使用超級管理員身份進入 ~ 目錄下就能看到 備份檔案.sql 這個檔案。

這個 備份檔案.sql 檔案 其實裡面是一堆 sql 語句(裡面沒有運算元據庫的語句,

都是些建立表和增加資料的操作)。

2.資料恢復

連線 mysql ,建立資料庫

退出連線,執行以下命令對資料進行恢復

mysql -uroot -p 資料庫名 < ~/備份檔案.sql

按提示輸入 mysql 的密碼

這樣就把 之前 的資料恢復到 新建的資料庫裡面了。

總結 :

資料的備份說白了就是按照資料庫中現有的資料生成一堆 sql 語句,然後把這堆語句儲存到乙個指定的檔案中,

資料恢復說白了就是先新建乙個資料庫,然後 通過這個指令碼來生成資料。如果跨伺服器 ,這個指令碼很重要。

mysql資料庫基本操作 MYSQL資料庫基本操作

1.連線mysql mysql u 使用者名稱 p 回車後要求輸入密碼,密碼不可見 2.退出mysql命令 exit 回車 3.修改密碼 mysqladmin u使用者名稱 p舊密碼 password 新密碼4.檢視mysql許可權和使用者select host,user fromuser 對資料庫...

MySQL資料庫 基本操作

地點 基地 一 簡述 材料院的一期專案使用的是小型資料庫access,出現了幾個問題,一是 資料亂序問題,按理來說,資料應該是按時間有序寫入資料庫的,但實際上並非如此。第二個問題是 客戶要求能將多次實驗資料 一次性選中匯出到excel,後來發現即便是借助微軟的巨集命令神力也倒不到想要的快速效果。所以...

MySQL資料庫基本操作

嵌入式 小j的天空 一 mysql資料庫建立 1.建立庫與表 建立庫語句 create database 庫名稱 查庫庫語句 show databases 選擇庫語句 use 庫名稱 建立表語句 create table 表名稱 檢視表語句 desc 表名稱 例項 假設乙個公司為乙個庫,在庫中建立乙...