mysql怎么重置表,sql 重置表

如何重置MySQL的自动增量列

你的数据库表可以定义为数字自动递增的主键,MySQL将采取照顾其独特的价值,同时插入新行。

创新互联建站自2013年创立以来,我们提供高端网站建设、小程序定制开发、电商视觉设计、app软件开发及网络营销搜索优化服务,在传统互联网与移动互联网发展的背景下,我们坚守着用标准的设计方案与技术开发实力作基础,以企业及品牌的互联网商业目标为核心,为客户打造具商业价值与用户体验的互联网+产品。

每次添加一个新行,MySQL的增量值自动,它坚持以表。但有时你可能需要重置AUTOINCREMENT列值1。说你写一个示例应用程序,你已经有几行插入表中。现在要删除这些行,并自动增量列复位,使新行插入将有主键的值1 1。

有几个方法来实现这一点。

1。直接复位自动增量值

ALTER TABLE语法提供了一种方法来重新设置自动增量列。采取看看下面的例子。

ALTER TABLE table_name AUTO_INCREMENT = 1;

请注意,你不能重置计数器的值小于或等于任何已使用的。对于MyISAM,如果该值小于或等于目前在AUTO_INCREMENT列的最大值,该值是目前最大的加一复位。对于InnoDB,如果该值大于当前列中的最大值,没有出现错误和不改变当前序列值。

2。截断表截断表自动增量值自动复位为0。

TRUNCATE TABLE table_name;

谨慎使用。用于截断时,任何的AUTO_INCREMENT计数器复位到零。从MySQL 5.0.13上,AUTO_INCREMENT计数器复位为零的TRUNCATE TABLE,而不管是否有一个外键约束。

一旦发射TRUNCATE是,表处理不记得过去使用的AUTO_INCREMENT值,但从头开始计数。这是真实的,甚至对于MyISAM和InnoDB,通常不重用序列值。

3。下降和重新创建表

这是另一种方式下重启自动增量指数。虽然不是很理想。

DROP TABLE table_name;

所有这些技术的价值技术重置自动增量列数。使用任何适合你的要求。

怎么重置mysql的自增列

1.

支持设置自增列的值

ALTER

TABLE

table_name

AUTO_INCREMENT

=

1;

不过这种方式只能设置大于当前使用的值,不能设置小于等于当前已经使用的自增列的值。myisam如果设置小于等于,则自增列的值会自动设置为当前最大值加1。innodb则不会改变。

2.通过TRUNCATE把自增列设置为0,从MySQL

5.0.13开始TRUNCATE就能重置自增列为0.myisam和innode都是如此。

TRUNCATE

TABLE

table_name;

注意:TRUNCATE

会清空表中数据

3.drop和create重建表方式重置自增列为0

DROP

TABLE

table_name;

CREATE

TABLE

table_name

{

...

};

mysql数据库密码忘了怎么重置

开始--》运行--》cmd

进入mysql安装目录的bin文件夹(客户都没设置环境变量找不到mysql命令只能到那个目录)

比如:D:\Program Files\MySQL\MySQL Server 5.0\bin

1.暂停mysql服务;

2.忽略授权问题;

3.另一个命令行进去myql;

4.重置root密码并刷新授权表;

5.任务管理器杀掉mysql进程;

6.重启mysql服务;

net stop mysql

mysqld --skip-grant-tables

开另外一个命令行窗口,一样进入那个目录

mysql -u root -p

update mysql.user set password=PASSWORD("新密码") where User="root";

flush privileges;

任务管理器杀掉mysql进程

net start mysql

#################################################################

vi /etc/my.cnf 在[mysqld]添加

skip-grant-tables

/etc/init.d/mysql restart

mysql

update mysql.user set password=PASSWORD("新密码") where User="root";

flush privileges;

/etc/init.d/mysql restart

mysql重置主表主键自增值

重置主键自增,前提是这个表中的数据 必须清空。

如果清空后还是不能重置的,那么删掉表,重建。

怎么重置mysql的自增列AUTO

有两种方法,一种方法使用mysql的check table和repair table 的sql语句,另一种方法是使用MySQL提供的多个myisamchk, isamchk数据检测恢复工具。前者使

用起来比较简便。推

荐使用。

1. check table 和 repair table

登陆mysql 终端:

mysql -uxxxxx -p dbname

check table tabTest;

如果出现的结果说Status是OK,则不用修复,如果有Error,可以用:

repair table tabTest;

进行修复,修复之后可以在用check table命令来进行检查。在新版本的phpMyAdmin里面也可以使用check/repair的功能。

2. myisamchk, isamchk

其中myisamchk适用于MYISAM类型的数据表,而isamchk适用于ISAM类型的数据表。这两条命令的主要参数相同,一般新的系统都使用MYISAM作为缺省的数据表类型,这里以myisamchk为例子进行说明。当发现某个数据表出现问题时可以使用:

myisamchk tablename.MYI

进行检测,如果需要修复的话,可以使用:

myisamchk -of tablename.MYI

关于myisamchk的详细参数说明,可以参见它的使用帮助。需要注意的时在进行修改时必须确保MySQL服务器没有访问这个数据表,保险的情况下是最好在进行检测时把MySQL服务器Shutdown掉

另外可以把下面的命令放在你的rc.local里面启动MySQL服务器前:

[ -x /tmp/mysql.sock ] /pathtochk/myisamchk -of /DATA_DIR/*/*.MYI

其中的/tmp/mysql.sock是MySQL监听的Sock文件位置,对于使用RPM安装的用户应该是/var/lib/mysql/mysql.sock,对于使用源码安装则是/tmp/mysql.sock可以根据自己的实际情况进行变更,而pathtochk则是myisamchk所在的位置,DATA_DIR是你的MySQL数据库存放的位置。

需要注意的时,如果你打算把这条命令放在你的rc.local里面,必须确认在执行这条指令时MySQL服务器必须没有启动!检测修复所有数据库(表)


文章名称:mysql怎么重置表,sql 重置表
文章链接:http://hbruida.cn/article/hsoeij.html