mysql常用操作命令總結

訪問mysql數據庫

1.登錄到mysql數據庫

[root@localhost /]# mysql -u root   //-u指定用戶登陸 
[root@localhost /]# mysql -u root -p   //-p需要密碼驗證 
[root@localhost /]# mysql -h 8.8.8.8 -u root  //-h指定服務器地址

默認情況下mysql沒有允許遠程登錄,可以添加授權允許遠程登錄

登錄mysql執行以下命令:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123123' WITH GRANT OPTION;     //允許root用戶使用123123密碼遠程登錄
mysql> FLUSH PRIVILEGES;   //刷新權限
update mysql.user set password=('putianhui') where user='root'

2.退出mysql數據庫

mysql>環境中執行exit或quit退出mysql命令工具


密碼相關操作

更改密碼方式一:
mysql> update mysql.user set password=password('123123') where user='root';        //將root用戶的密碼更改爲123123
mysql> flush privileges;   //刷新用戶權限信息
更改密碼方式二:
[root@localhost ~]# mysqladmin -u root -p'舊密碼' password '新密碼'
mysqladmin -u root password 123123        //更改root用戶的密碼
密碼忘記找回密碼:
[root@localhost /]# vim /etc/my.cnf   //修改mysql配置文件
---------------------------------------添加下行內容----------------------------------
skip-grant-tables     //跳過密碼驗證
---------------------------------------------------------------------------------------
[root@localhost /]# systemctl restart mysqld  //重啓mysql服務
[root@localhost /]# mysql –uroot   //重新使用root登陸

注意:如果更改密碼後還是無法登陸,就把user表中user字段和password字段爲空的行記錄刪除,然後刷新權限信息再重試


Mysql常用操作

1. 查看數據庫

mysql> show databases;   //查看數據庫列表


2. 查看錶

mysql> use ceshi;            //切換到ceshi數據庫
mysql> show tables;            //查看ceshi數據庫都有哪些表


3. 查看錶的結構(各字段的信息),要指定庫名.表名作爲參數,如果只使用表名要先用use切換到目標數據庫

方法一:
mysql> describe mysql.user;               //查看mysql數據庫user表的結構
方法二:
mysql> use mysql                        //切換到mysql數據庫
mysql> describe user;                    //查看user表的結構


4. 創建數據庫

mysql> create database ceshi;       //創建一個數據庫,名爲ceshi


5. 創建表

語法:create table 表名(字段1名稱 類型,字段2名稱 類型,primary key(主鍵名));
mysql> create table biao1 (name char(16) not null,passwd char(16) not null,primary key(name));          //創建表名稱爲biao1,有name列、passwd列,將name列設置爲主鍵


6. 刪除一個表,要指定庫名.表名作爲參數,如果只使用表名要先用use切換到目標數據庫

方法一:
mysql> drop table ceshi.biao1;       //刪除ceshi庫中的biao1
方法二:
mysql> use ceshi;                    //切換到ceshi數據庫
mysql> drop table biao1;           //刪除biao1


7. 刪除數據庫

mysql> drop database ceshi;    //刪除ceshi數據庫


8. 插入數據

語法: insert into 表名(字段1,字段2,) values(字段1的值,字段2的值)
mysql> insert biao1 (name,passwd) values('lisi','123');                //向biao1中插入一條記錄name爲lisi,passwd爲123


9. 查詢數據

語法:select 字段名1,字段名2 from 表名 where 條件表達式
mysql> select name,passwd from biao1 where name='lisi';                //查詢biao1中name是lisi的name和passwd信息


10. 修改數據

語法: update 表名 set 字段1名=字段1更改後的值 where 條件表達式
mysql> update ceshi.biao1 set passwd='456' where name='lisi';        //將biao1中name是lisi的passwd更改爲456

11.刪除數據記錄,不帶條件表達式是刪除所有記錄

語法:delete from 表名where 條件表達式
mysql> delete from biao1 where name='lisi';          //刪除biao1中name是lisi的記錄

12.數據庫授予權限

GRANT注意事項:

Ø 權限列表:用於列出授權使用的各種數據庫操作,以逗號分隔,使用all代表所有權限

Ø 庫名.表名:用於指定授權操作的庫和表的名車,可以使用通配符”*”表示所有庫和表,”ceshi.*”表示ceshi庫裏的所有表

Ø 用戶名@來源地址:用於指定用戶名稱和允許訪問的客戶機地址,就是誰能鏈接,從哪裏連接,可以使用通配符“%”表示任何網絡,如”%.aptech.com” “192.168.1.%”等

Ø IDENTIFIED BY:用於設置用戶連接數據庫時所用的密碼,新建用戶省略此字段則表示用戶的密碼爲空

語法:GRANT 權限列表 ON 庫名.表名 TO 用戶名@來源地址 [ identified by ‘密碼’ ]
mysql> grant all on *.* to 'zhangsan'@'%' identified by 'putianhui';            //新建zhangsan用戶授予所有庫所有表有所有的權限

13.查詢用戶的授權信息

語法:show grants for '用戶名@'來源地址';
mysql> show grants for 'zhangsan'@'%';  //查詢zhangsan用戶授權信息

14.撤銷用戶授權信息,撤銷後還能登陸數據庫,無法操作

語法:revoke 權限信息 on 庫名.表名. from '用戶名'@'來源地址';
mysql> revoke all on *.* from 'zhangsan'@'%';         //撤銷zhangsan用戶的授權信息

15.修改表中列的屬性

語法:alter table 表名 modify column 列名 新的列類型
Alter table user modify column 姓名 char(200)         //將user表中姓名列類型改爲char(200)


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