内容简介:分享MySQL数据库简单操作及事务和索引的笔记,希望对大家有所帮助。mysql> show databases; //查看所有数据库
分享 MySQL 数据库简单操作及事务和索引的笔记,希望对大家有所帮助。
MySQL数据库操作:
[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,密码为密文密码
from users; //查看users表中数据记录
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; //提交
再看一下
现在有了,事务一般用于脚本中。
Linux公社的RSS地址 : https://www.linuxidc.com/rssFeed.aspx
本文永久更新链接地址: https://www.linuxidc.com/Linux/2018-12/155647.htm
以上所述就是小编给大家介绍的《MySQL数据库简单操作及事务和索引》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- InnoDB 事务及索引原理
- 深入浅出剖析 MySQL 事务及索引
- 解读mysql的索引和事务的正确姿势
- Apache Phoenix:HBase之上的SQL工具[5]: 事务与索引
- MySQL索引使用说明(单列索引和多列索引)
- Elasticsearch索引的基本操作(3)-索引的滚动索引
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。