共计 2350 个字符,预计需要花费 6 分钟才能阅读完成。
分享 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,密码为密文密码
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; // 提交
再看一下
现在有了,事务一般用于脚本中。
: