怎么修改mysql数据库表中内容

怎么修改mysql数据库表中内容,第1张

以windows为例

方法一(假设mysql在d:\mysql目录下)

1、用系统管理员登陆windows系统。

2、停止MySQL的服务。

3、运行cmd进入dos命令窗口,然后进入MySQL的安装目录,比如安装目录是d:\mysql,进入d:\mysql\bin (如果是c:\Program Files\mysql目录,目录包含空格,使用cd "c:\Program Files\mysql"进入mysql目录)

4、跳过权限检查启动MySQL(关键的一步)

d:\mysql\bin>mysqld-nt --skip-grant-tables(会占用一个dos控制台窗口,不能关闭)

5、重新打开一个dos控制台窗口,进入d:\mysql\bin目录,设置root的新密码

d:\mysql\bin>mysqladmin -u root flush-privileges password 【新密码】

(注意:这条命令如果重复执行,可能需要关闭4的窗口并重新运行)

d:\mysql\bin>mysqladmin -u root -p shutdown(或直接关闭第一个dos控制台窗口)

将【新密码】替换为你要用的root的密码,第二个命令可能会提示你输入新密码,重复第一个命令输入的密码。

6、关闭MySQL的控制台窗口,用正常模式启动Mysql

7、你可以用新的密码链接到Mysql了。

方法二

1、停止mysql服务

2、找到mysql数据的data目录,将另外一个mysql的data目录下的mysql目录覆盖过来(如果知道root密码)

( *** 作之前先备份mysql\data\mysql目录的所有文件)

这种方法缺点:覆盖掉其他的用户,mysql的版本需相同

3、重新启动mysql服务

对mysql数据表中的某个字段的所有数据修改,可以使用update语句,语法是:

update table_name set column = value[, colunm = value...] [where condition]

[ ]中的部分表示可以有也可以没有。

例如:

update students set stu_name = "zhangsan", stu_gender = "m" where stu_id = 5

扩展资料:

SQL修改字段属性总结:

1、修改表中字段类型 可以修改列的类型,是否为空)

Alter table [表名] alter column [列名] 类型

2、向表中添加字段

Alter table [表名] add [列名] 类型

3、删除字段

Alter table [表名] drop column [列名]

4、添加主键

Alter table [表名] add constraint [ 约束名] primary key( [列名])

5、添加唯一约束

Alter table [表名] add constraint [ 约束名] unique([列名])

6、添加表中某列的默认值

Alter table [表名] add constraint [约束名] default(默认值) for [列名]

本期我们用 MySQL 提供的 DBUG 工具来研究 MySQL 的 SQL 处理流程。

起手先造个实例

这里得稍微改一下实例的启动文件 start,将 CUSTOM_MYSQLD 改为 mysqld-debug:

重启一下实例,加上 debug 参数:

我们来做一两个实验,说明 DBUG 包的作用:

先设置一个简单的调试规则,我们设置了两个调试选项:

d:开启各个调试点的输出

O,/tmp/mysqld.trace:将调试结果输出到指定文件

请点击输入图片描述

然后我们创建了一张表,来看一下调试的输出结果:

请点击输入图片描述

可以看到 create table 的过程中,MySQL 的一些细节 *** 作,比如分配内存 alloc_root 等

这样看还不够直观,我们增加一些信息:

请点击输入图片描述

来看看效果:

请点击输入图片描述

可以看到输出变成了调用树的形式,现在就可以分辨出 alloc_root 分配的内存,是为了解析 SQL 时用的(mysql_parse)

我们再增加一些有用的信息:

请点击输入图片描述

可以看到结果中增加了文件名和行号:

请点击输入图片描述

现在我们可以在输出中找一下统计表相关的信息:

请点击输入图片描述

可以看到 MySQL 在这里非常机智,直接执行了一个内置的存储过程来更新统计表。

沿着 que_eval_sql,可以找到其他类似的统计表,比如下面这些:

请点击输入图片描述

请点击输入图片描述

本次实验中,我们借助了 MySQL 的 DBUG 包,来让 MySQL 将处理过程暴露出来。MySQL 中类似的技术还有不少,比如 performance_schema,OPTIMIZER_TRACE 等等。

这些技术将 MySQL 的不同方向的信息暴露出来,方便大家理解其中机制。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7444727.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存