MySQL数据库简单操作及事务和索引

分享MySQL数据库简单操作及事务和索引的笔记,希望对大家有所帮助。

MySQL数据库操作:
[root@MYSQL ~]# mysql -u root -p //进入数据库中
MySQL数据库简单操作及事务和索引

mysql> show databases; //查看所有数据库

MySQL数据库简单操作及事务和索引
mysql> use mysql; //进入mysql数据库

MySQL数据库简单操作及事务和索引
mysql> show tables; //查看数据库中的表

MySQL数据库简单操作及事务和索引

mysql> desc user; //查看表的结构
MySQL数据库简单操作及事务和索引

mysql> create database auth; //创建新的空库
MySQL数据库简单操作及事务和索引

mysql> show databases;
如图,显示所有库命令下,刚创建的库在其中
MySQL数据库简单操作及事务和索引
[root@MYSQL ~]# ls /usr/local/mysql/data/
MySQL数据库简单操作及事务和索引
如图多了一个auth目录
mysql> show tables; //查看auth数据库中的表
MySQL数据库简单操作及事务和索引
库里没有表

mysql> create table users(user_name CHAR(16) NOT NULL,user_passwd CHAR(48)DEFAULT'',PRIMARY KEY (user_name));
//在auth库中创建users表,并指定主键

MySQL数据库简单操作及事务和索引
mysql> desc users; //查看users表的结构

MySQL数据库简单操作及事务和索引
mysql> drop table auth.users; //删除auth库中的users表
MySQL数据库简单操作及事务和索引

mysql> insert into users(user_name,user_passwd) values('zhangsan',password('123123'));
//在users表中插入数据内容zhangsan,密码为密文密码
MySQL数据库简单操作及事务和索引

mysql> insert into users(user_name,user_passwd) values('lisi','123123');
//在users表中插入数据内容lisi,密码为明文密码123123
MySQL数据库简单操作及事务和索引
mysql> insert into users values('wangwu','123abc');
//在users表中插入数据内容wangwu,密码为明文密码123abc
注:在插入新的数据内容时,如果这条记录完整包括表中所有字段的值,则插入语句中指定字段的部分可省略
MySQL数据库简单操作及事务和索引

mysql> insert into users values('jack',password('123abc'));
//在users表中插入数据内容wangwu,密码为密文密码
MySQL数据库简单操作及事务和索引

mysql> select from users; //查看users表中数据记录
MySQL数据库简单操作及事务和索引
mysql> select
from users \G // \G 表示竖状显示出来
MySQL数据库简单操作及事务和索引

mysql> update users SET user_passwd=PASSWORD('') WHERE user_name='lisi';
//修改users表中用户名为lisi的记录,将密码子串设为空值
mysql> select * from users;//查看修改后的结果
MySQL数据库简单操作及事务和索引

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

skip_grant_tables

MySQL数据库简单操作及事务和索引
[root@MYSQL ~]# service mysqld restart
[root@MYSQL ~]# mysql //直接输 mysql 回车
MySQL数据库简单操作及事务和索引

mysql> update mysql.user set authentication_string=password('123456') where user='root';
//在mysql库users表中将用户名为root的密码修改为123456的密文形式
MySQL数据库简单操作及事务和索引
mysql> flush privileges; //刷新权限
MySQL数据库简单操作及事务和索引
修改完成后进入的mysql主配置文件中将skip_grant_tables删除后重启mysql
[root@MYSQL ~]# service mysqld restart
MySQL数据库简单操作及事务和索引
现在用mysql登录会报错
[root@MYSQL ~]# mysql -u root -p
MySQL数据库简单操作及事务和索引

mysql> delete from users where user_name='lisi'; //删除auth库中users表中的用户名为lisi的记录
MySQL数据库简单操作及事务和索引
mysql> drop database aa; //删除数据库aa
MySQL数据库简单操作及事务和索引

索引
mysql> use imployee_salary;
mysql> show tables; //查看imployee_salary库中的表
MySQL数据库简单操作及事务和索引
mysql> select * from IT_salary; //查询IT_salary表中的数据记录
MySQL数据库简单操作及事务和索引
普通索引
mysql> create index salary_index on IT_salary(薪资);
//为IT_salary表的薪资列,创建普通索引salary_index
MySQL数据库简单操作及事务和索引

mysql> show index from IT_salary; //查看普通索引
MySQL数据库简单操作及事务和索引

唯一性索引
mysql> create unique index salary_unique on IT_salary(姓名);
//IT_salary表的姓名列创建唯一性索引salary_unique
MySQL数据库简单操作及事务和索引
mysql> show index from IT_salary;
MySQL数据库简单操作及事务和索引
mysql> alter table IT_salary add primary key(员工ID);
MySQL数据库简单操作及事务和索引
这个报错,是提醒已有主键了,之前已经设置过主键了

事务,将操作语句做为一个整体提交后进行批量执行--
mysql> use auth;
mysql> begin;
mysql> insert into users values('tom',password('123abc'));
mysql> insert into users values('lucy',password('123abc'));
MySQL数据库简单操作及事务和索引
然后再开一个远程登录看一下,有木有将数据记录插入进去表中
MySQL数据库简单操作及事务和索引
mysql> commit; //提交
MySQL数据库简单操作及事务和索引
再看一下
MySQL数据库简单操作及事务和索引
现在有了,事务一般用于脚本中。

相关推荐