文档章节

Mysql中常用操作(密码破解、数据库备份、数据库导入、授权)

会游泳的鱼_
 会游泳的鱼_
发布于 2017/12/06 17:26
字数 1096
阅读 56
收藏 0

修改表的编码方式:

ALTER TABLE `test` DEFAULT CHARACTER SET utf8;该命令用于将表test的编码方式改为utf8;

修改字段的编码方式:

ALTER TABLE `test` CHANGE `name` `name` VARCHAR(36) CHARACTER SET utf8 NOT NULL; 该命令用于将表test中name字段的编码方式改为utf8

更改表的引擎:

alter table `table_name` engine=innodb;  
alter table `table_name` engine=myisam;

刷新权限:

flush privileges

授权:

创建test用户 并只能操作follow_db数据库:
CREATE USER 'test'@'%' IDENTIFIED BY 'pwd123';

GRANT SELECT, INSERT, UPDATE, REFERENCES, DELETE, CREATE, DROP, ALTER, INDEX, TRIGGER, CREATE VIEW, SHOW VIEW, EXECUTE, ALTER ROUTINE, CREATE ROUTINE, CREATE TEMPORARY TABLES, LOCK TABLES, EVENT ON `follow\_db`.* TO 'test'@'%';

GRANT GRANT OPTION ON `follow\_db`.* TO 'test'@'%';

Mysql密码修改/破解

1. mysqladmin -u root -p password mypasswd 

输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。 

2.MySQL 忘记口令的解决办法 

如果 MySQL 正在运行,首先杀之:

 killall -TERM mysqld。 

启动 MySQL :

/usr/bin/mysqld_safe --skip-grant-tables & 

就可以不需要密码就进入 MySQL 了。 

然后就是 

>use mysql 
>update user set password=password("new_pass") where user="root"; 
>flush privileges; 

重新杀 MySQL ,用正常方法启动 MySQL 。 

3.先停止mysql服务。

然后打开mysql配置文件/etc/my.cnf.
在【mysqld】下面添加一行代码:skip-grant-tables。
这行代码意思就是跳过跳过授权表,即是可以跳过密码验证直接进入数据库。
service mysqld restart //重启mysql数据库。假如不重启的话,不会生效。
mysql -uroot -p  //此时直接回车,既可以进入数据库。
出现mysql>就说明你已经进入到mysql数据库里了。
进数据库后,
use mysql //选择mysql这个库,因为mysql的root密码存放在这个数据库里。
show tables  //查看下mysql库里有哪些表,我们需要操作的用户名密码都在user表里。
desc user  //查看下user表有哪些字段
更改root密码。
update user set password=password('123456') where user="root";  //用户选root,可以随便更改成任意密码,我这里设置的123456,password()是mysql密码加密的一个函数。
 flush privileges;   //刷新下密码,使更改的生效。
exit  //退出数据库
重新登录
mysql -uroot -p   //回车输入刚刚更改的密码,就能进去了。
然后再次进入配置文件vi /etc/my.cnf 把skip-grant-tables去掉。

Mysql数据库备份

mysqldump -uroot -p test >/test.sql 回车输入密码即可

Mysql 数据库导入(1)

Mysql -uroot -p test < /test.sql 回车输入密码即可

Mysql 数据库导入(2)

进入 MySQL 控制台(如:MySQL 5.5 Command Line Client),使用 source 命令执行
Mysql>source 【sql脚本文件的路径全名】 或 Mysql>\. 【sql脚本文件的路径全名】,示例:
source C:\test.sql 或者 \. C:\test.sql

索引操作

1、创建索引(PRIMARY KEY,INDEX,UNIQUE)

mysql>ALTER TABLE 表名 ADD INDEX index_name (column list);
mysql>ALTER TABLE 表名 ADD UNIQUE index_name (column list);
mysql>ALTER TABLE 表名 ADD PRIMARY KEY index_name (column list);

2、删除索引(PRIMARY KEY,INDEX,UNIQUE)

mysql>ALTER TABLE 表名 DROP INDEX index_name (column list);
mysql>ALTER TABLE 表名 DROP UNIQUE index_name (column list);
mysql>ALTER TABLE 表名 DROP PRIMARY KEY index_name (column list);

3、重建索引

mysql> REPAIR TABLE 表名 QUICK;

4、查看某个数据表的索引

mysql> SHOW INDEX FROM 表名;

查看表结构

Desc  表名

允许远程登录mysql

直接授权(推荐)
从任何主机上使用root用户,密码:youpassword(你的root密码)连接到mysql服务器:
# mysql -u root -proot 
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
操作完后切记执行以下命令刷新权限 

FLUSH PRIVILEGES 

清空表

drop truncate delete 程度从强到弱
1、drop table tb 
drop将表格直接删除,没有办法找回
2、truncate table  tablename
truncate 删除表中的所有数据,不能与where一起使用
3、delete from tb (where)
delete 删除表中的数据(可制定某一行)
truncate和delete的区别
① 事务:truncate是不可以rollback的,但是delete是可以rollback的;
原因:truncate删除整表数据(ddl语句,隐式提交),delete是一行一行的删除,可以rollback
② 效果:truncate删除后将重置索引(自增长id从零开始) ,delete不会删除索引 
③ truncate 不能触发任何Delete触发器。
④ delete 删除可以返回行数

© 著作权归作者所有

上一篇: 常用算法
下一篇: Git分支管理
会游泳的鱼_
粉丝 0
博文 61
码字总数 56162
作品 0
深圳
后端工程师
私信 提问
MySQL的基本语法(授权与备份)

登陆mysql: 语法如下: mysql -u用户名-p用户密码 键入命令mysql -uroot -p,回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是: mysql> 注意,如果是连接到...

阿桂1989
2015/08/05
0
0
MySQL的权限设置和备份还原

MySQL数据库系统的维护工作主要包括用户权限的设置、数据库的备份与恢复,本篇博客将对进行这些操作进行讲解 数据库的用户授权 MySQL数据库的root用户账号拥有对所有库、表的全部权限,频繁使...

杨书凡
2017/12/13
0
0
使用MySQL数据库 SQL语句

1.查看当前服务器数据库中有哪些库? SHOW DATABASES; ###查看有哪些库 2.查看当前使用的库有哪些表? USE +要查询的库名 SHOW TABLES; ###查询库中有哪些表 3.查看标的结构? USE +要使用的...

帅小欣
2017/08/06
0
0
cmd连接mysql的方法详解

mysql cmd常用命令,偶尔需要命令行执行mysql的朋友可以参考下。 将mysql目录下bin目录中的mysql.exe放到C:WINDOWS下,可以执行以下命令 连接:mysql -h主机地址 -u用户名 -p用户密码 (注:...

浩爷
2016/06/14
56
0
mysql系统数据库安装

mysql就不用谈理论了,文档写了安装过程,以及基本增删改查 1.准备工作确认没有使用RPM方式安装mysql-server、mysql2.安装mysql之前,需要安装软件开发软件包,如果安装操作系统的时候勾选过...

xuewenhcang
2018/01/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

智慧酒店方案能给酒店带来什么?

酒店在升级的过程中,智慧酒店在品牌升级最后的归属。那么智慧酒店方案可以为酒店带来怎么样的经济效益呢?智慧酒店主要是可以降低运营成本。此外,智慧酒店也能提高客人体验度。 那什么叫智慧...

非思丸FaceTo
24分钟前
6
0
金融壹账通黄润中:“5G到来将使金融科技取得突破性颠覆”

最近一个月,伴随着气温的升高,5G的热度也在不断提升。6月初,5G商用牌照正式发布,5G手机紧随其后在各地亮相。5G技术也给金融领域带来了深远影响,金融机构如何抓住5G时代的机遇和挑战,实...

IFTNews
35分钟前
9
0
怎么才能在远程桌面让电脑不休眠

  想要在使用远程桌面时,不然电脑休眠,那么,按照下面的操作去进行就可以了。   在建立连接之前,进入控制面板,找到电源选项,把所有关闭显示器等方面的功能全部调成“从不”,然后开...

takethelas
38分钟前
5
0
android opencv实现人脸检测 以及 年龄和性别识别

支持技术分享,转载或复制,请指出文章来源此博客作者为Jack__0023 1、背景 因为面对的场景不同,所以我上次使用 android 提供的人脸检测 已经不能满足我的使用,因为长时间开启,他会出现各...

jack__0023
47分钟前
10
0
JDK动态代理[4]----ProxyGenerator生成代理类的字节码文件解析

通过前面几篇的分析,我们知道代理类是通过Proxy类的ProxyClassFactory工厂生成的,这个工厂类会去调用ProxyGenerator类的generateProxyClass()方法来生成代理类的字节码。ProxyGenerator这个...

xiaomin0322
48分钟前
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部