1. 程式人生 > >msyql數據庫簡單操作及事務和索引

msyql數據庫簡單操作及事務和索引

linux mysql

msyql數據庫簡單操作及事務和索引

Msyql數據庫操作:
[root@MYSQL ~]# mysql -u root -p //進入數據庫中
技術分享圖片

mysql> show databases; //查看所有數據庫

技術分享圖片
mysql> use mysql; //進入mysql數據庫

技術分享圖片
mysql> show tables; //查看數據庫中的表

技術分享圖片

mysql> desc user; //查看表的結構
技術分享圖片

mysql> create database auth; //創建新的空庫
技術分享圖片

mysql> show databases;
如圖,顯示所有庫命令下,剛創建的庫在其中
技術分享圖片
[root@MYSQL ~]# ls /usr/local/mysql/data/

技術分享圖片
如圖多了一個auth目錄
mysql> show tables; //查看auth數據庫中的表
技術分享圖片
庫裏沒有表

mysql> create table users(user_name CHAR(16) NOT NULL,user_passwd CHAR(48)DEFAULT‘‘,PRIMARY KEY (user_name));
//在auth庫中創建users表,並指定主鍵

技術分享圖片
mysql> desc users; //查看users表的結構

技術分享圖片
mysql> drop table auth.users; //刪除auth庫中的users表
技術分享圖片

mysql> insert into users(user_name,user_passwd) values(‘zhangsan‘,password(‘123123‘));

//在users表中插入數據內容zhangsan,密碼為密文密碼
技術分享圖片

mysql> insert into users(user_name,user_passwd) values(‘lisi‘,‘123123‘);
//在users表中插入數據內容lisi,密碼為明文密碼123123
技術分享圖片
mysql> insert into users values(‘wangwu‘,‘123abc‘);
//在users表中插入數據內容wangwu,密碼為明文密碼123abc
註:在插入新的數據內容時,如果這條記錄完整包括表中所有字段的值,則插入語句中指定字段的部分可省略
技術分享圖片

mysql> insert into users values(‘jack‘,password(‘123abc‘));

//在users表中插入數據內容wangwu,密碼為密文密碼
技術分享圖片

mysql> select from users; //查看users表中數據記錄
技術分享圖片
mysql> select
from users \G // \G 表示豎狀顯示出來
技術分享圖片

mysql> update users SET user_passwd=PASSWORD(‘‘) WHERE user_name=‘lisi‘;
//修改users表中用戶名為lisi的記錄,將密碼子串設為空值
mysql> select * from users;//查看修改後的結果
技術分享圖片

跳過授權表重置root密碼----破解root密碼
[root@MYSQL ~]# vi /etc/my.cnf //修改mysql主配置文件

skip_grant_tables

技術分享圖片
[root@MYSQL ~]# service mysqld restart
[root@MYSQL ~]# mysql //直接輸 mysql 回車
技術分享圖片

mysql> update mysql.user set authentication_string=password(‘123456‘) where user=‘root‘;
//在mysql庫users表中將用戶名為root的密碼修改為123456的密文形式
技術分享圖片
mysql> flush privileges; //刷新權限
技術分享圖片
修改完成後進入的mysql主配置文件中將skip_grant_tables刪除後重啟mysql
[root@MYSQL ~]# service mysqld restart
技術分享圖片
現在用mysql登錄會報錯
[root@MYSQL ~]# mysql -u root -p
技術分享圖片

mysql> delete from users where user_name=‘lisi‘; //刪除auth庫中users表中的用戶名為lisi的記錄
技術分享圖片
mysql> drop database aa; //刪除數據庫aa
技術分享圖片

索引
mysql> use imployee_salary;
mysql> show tables; //查看imployee_salary庫中的表
技術分享圖片
mysql> select * from IT_salary; //查詢IT_salary表中的數據記錄
技術分享圖片
普通索引
mysql> create index salary_index on IT_salary(薪資);
//為IT_salary表的薪資列,創建普通索引salary_index
技術分享圖片

mysql> show index from IT_salary; //查看普通索引
技術分享圖片

唯一性索引
mysql> create unique index salary_unique on IT_salary(姓名);
//IT_salary表的姓名列創建唯一性索引salary_unique
技術分享圖片
mysql> show index from IT_salary;
技術分享圖片
mysql> alter table IT_salary add primary key(員工ID);
技術分享圖片
這個報錯,是提醒已有主鍵了,之前已經設置過主鍵了

事務,將操作語句做為一個整體提交後進行批量執行--
mysql> use auth;
mysql> begin;
mysql> insert into users values(‘tom‘,password(‘123abc‘));
mysql> insert into users values(‘lucy‘,password(‘123abc‘));
技術分享圖片
然後再開一個遠程登錄看一下,有木有將數據記錄插入進去表中
技術分享圖片
mysql> commit; //提交
技術分享圖片
再看一下
技術分享圖片
現在有了,事務一般用於腳本中

msyql數據庫簡單操作及事務和索引