文档标签: 数据库
如果忘记了 MySQL 的 root 密码,可以用以下方法重新设置: 1. KILL掉系统里的MySQLD进程;
killall -TREM mysqld 2. 用以下命令启动MySQL,以不检查权限的方式启动;
mysqld_safe -skip-grant-tables & 3. 然后用空密码方式使用root用户登录 MySQL;
mysql -u root 4. 修改root用户的密码;
mysql> update mysql.user set password=PASSWORD(’新密码’) where User=’root’;
mysql> flush privileges;
mysql> quit 5. 重新启动MySQL,就可以使用新密码登录了...
字段类型:
TINYINT[(M)] [UNSIGNED] [ZEROFILL]
一个很小的整数。有符号的范围是-128到127,无符号的范围是0到255。SMALLINT[(M)] [UNSIGNED] [ZEROFILL]
一个小整数。有符号的范围是-32768到32767,无符号的范围是0到65535。MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL]
一个中等大小整数。有符号的范围是-8388608到8388607,无符号的范围是0到16777215。INT[(M)] [UNSIGNED] [ZEROFILL]
一个正常大小整数。有符号的范围是-2147483648到2147483647,无符号的范围是0到4294967295。INTEGER[(M)] [UNSIGNED] [ZEROFILL]
这是INT的一个同义词。BIGINT[(M)] [UNSIGNED] [ZEROFILL]
一个大整数。有符号的范围是-9223372036854775808到9223372036854775807,无符号的范...
mysql删除空数据
DELETE FRDELETE FROM dbl_search where ISNULL(content);...
最近一段时间由于工作需要,开始关注针对Mysql数据库的select查询语句的相关优化方法。由于在参与的实际项目中发现当mysql表的数据量达到百万级时,普通SQL查询效率呈直线下降,而且如果where中的查询条件较多时,其查询速度简直无法容忍。曾经测试对一个包含400多万条记录(有索引)的表执行一条条件查询,其查询时间竟然高达40几秒,相信这么高的查询延时,任何用户都会抓狂。因此如何提高sql语句查询效率,显得十分重要。以下是网上流传比较广泛的30种SQL查询语句优化方法:1、应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。2、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。3、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num...
mysqli提供了面向对象和面向过程两种方式来与数据库交互,分别看一下这两种方式。1.面向对象在面向对象的方式中,mysqli被封装成一个类,它的构造方法如下:__construct ([ string $host [, string $username [, string $passwd [, string $dbname[, int $port [, string $socket ]]]]]] )在上述语法中涉及到的参数说明如下。l host:连接的服务器地址。l username:连接数据库的用户名,默认值是服务器进程所有者的用户名。l ...
在数据表中记录了用户验证时使用的书目,现在想取出所有书目,用DISTINCT和group by都取到了我想要的结果,但我发现返回结果排列不同,distinct会按数据存放顺序一条条显示,而group by会做个排序(一般是ASC)。DISTINCT 实际上和 GROUP BY 操作的实现非常相似,只不过是在 GROUP BY 之后的每组中只取出一条记录而已。所以,DISTINCT 的实现和 GROUP BY 的实现也基本差不多,没有太大的区别,同样可以通过松散索引扫描或者是紧凑索引扫描来实现。那DISTINCT 和GROUP BY哪个效率更高?DISTINCT操作只需要找出所有不同的值就可以了。而GROUP BY操作还要为其他聚集函数进行准备工作。从这一点上将,GROUP BY操作做的工作应该比DISTINCT所做的工作要多一些。 但实际上,GROUP BY 效率会更高点,为什么呢?对于DISTINCT操作,它会读取了所有记录,而GROUP BY需要读取的记录数量与分组的组数...
定义和用法mysql_pconnect() 函数打开一个到 MySQL 服务器的持久连接。
mysql_pconnect() 和 mysql_connect() 非常相似,但有两个主要区别:当连接的时候本函数将先尝试寻找一个在同一个主机上用同样的用户名和密码已经打开的(持久)连接,如果找到,则返回此连接标识而不打开新连接。其次,当脚本执行完毕后到 SQL 服务器的连接不会被关闭,此连接将保持打开以备以后使用(mysql_close() 不会关闭由 mysql_pconnect() 建立的连接)。语法mysql_pconnect(server,user,pwd,clientflag)参数描述server可选。规定要连接的服务器。
可以包括端口号,例如 "hostname:port",或者到本地套接字的路径,例如对于 localhost 的 ":/path/to/socket"。
如果 PHP 指令 mysql.default_host 未定义(默认情况),则默认值是 'localho...
MYSQL的索引主要作用是什么?
通俗的说索引是用来提高查询效率,不需要通过扫描全部表记录,而直接使用索引快速定位需要查询的值。...
这里有讨论贴:
http://bbs.phpchina.com/thread-274384-1-1.html
//两个字符串相互比对
$str = "好喝的饮料";
$store = "饮料|咖啡|冷饮|";
$arrData= explode('|',$store);
$sumData= count($arrData);
for($i=0;$i<$sumData;$i++)
{
$back1 = strchr($arrData[$i],$str );
$back2 = strchr($str ,$arrData[$i]);
//任何一个在另外一个存在,就记录
if($back1 != '' || $back2 != '')
{
$id = "ok";
break;
}
}
echo $id;
实例:
//进行所有关键词查找一对一对想到匹配
$key_list = $publish->where("status=0 and keywords<>''"...
mysql-bin.000001、mysql- bin.000002等文件是数据库的操作日志,例如UPDATE一个表,或者DELETE一些数据,即使该语句没有匹配的数据,这个命令也会存储到日志 文件中,还包括每个语句执行的时间,也会记录进去的。
那么这些文件该怎么删除和禁止呢?
禁止方法: vi /etc/my.cnf把里面的
#log-bin=mysql-bin
#binlog_format=mixed
注释掉,重启mysql服务即可.
删除方法:
输入命令:
/usr/local/mysql/bin/mysql -u root -p
输入密码登陆mysql后,运行命令:
reset master;
(包括;号)
清空日志文件.再查看Mysql文件的大小,已经小了很多了.
-bash-3.2# du -h –max-depth=1 /usr/local/mysql/var
du: cannot access `250Cmax-depth=1': No such file or directory
142M ...
昨天vps被人给登陆了,今天早上无法使用ssh远程登陆
最后不得不恢复到昨天的快照。
恢复好了,发现mysql启动出现:manager of pid-file quit without updating...
根据网上很多人提供的方法,kill掉所有的mysql进程,重新启动mysql发现一直停留在starting mysql...
最在在discuz论坛上看到这样一个帖子“求救,linux启动后mysql启动不了,启动mysql,一直停在starting mysql....”
其中有一个回复是检测磁盘是否满了,
用:du -sh 一看网站目录,已经19个G了,总共只有20个G,于是删除了一些不要的文件,回头不来看一下mysql已经正常了!
感谢网友们的讨论!...
关于$query=mysql_query($query);返回的是什么类型的值的问题的理解
今天泡csdn论坛看见一贴,就是关于$query=mysql_query($query);返回的是什么类型的值的问题,开始以为返回值是数组类型,后来调试了一下才发现不是数组类型,是资源类型,下面是demo代码
[html]
<?php
require_once("phpmysql.php");//引入数据库mysql操作类phpmysql.php文件
$sql="select * from hello007";//设置sql查询语句
$query=$db->query($sql);//调用phpmysql.php 文件中的方法进行检索操作
var_dump($query);//var_dump()用来打印变量的相关信息 输出结构为resource(4) of type (mysql result)
echo is_resource($query);//is_reso...
今天在做某客户网站时候遇到这样一个问题:
查询出所有发布信息的作者,再通作者信息获取会员等级,根据等级来排序。
首页要查出所有符合要求的信息,并且信息是一个会员只能出现一条,然后再查询会员相关信息!这样就做到了会员只会显示一次的功能!
看一下mysql语句是如何编写的:
select a.id from tableA as a left join tableB as b where a.uid=b.id group by a.uid order by a.level desc, a.id desc limit 10;
这样就解决了mysql查询重复出现的问题,主要是group by 这里!其他都是次要的了!...