phper,PHP学习_PHP技术_PHP网站建设_PHP程序员专注于PHP技术研究及学习

文档归类:数据库

mysql数据库主从数据同步操作演示步骤2013-05-15

由于公司的一些软件操作数据库比较平凡,但主要是查询操作,反应时间过长,导致公司很多员工的工作效率一直提不上去!于是想到了数据库的同步,查询就查询本地的数据库,添加就添加到主数据库上去! 这样在局域网查询起来应该速度要快很多! 下面来看一下具体的操作步骤: 1、配置远程数据库即主数据库: 登录Master服务器,编辑my.cnf #vim /etc/my.cnf 在[mysqld]段添加以下内容: [mysqld] log-bin=mysql-bin server-id=1 binlog-do-db=extmail binlog-ignore-db=mysql,test 解释:log-bin项是让Master服务器记录二进制日志这个是必须的; server-id=master_id 其中master_id必须为1到232–1之间的一个正整数值; binlog-do-db=database 是要记录日志的数据库; binlog-ignore-db 是不要记录日志的数据库名,多个数据库中间用逗号(,)隔开; 从master服务器添加要从slave服务器访问master服务器的有权限的帐号,看下面命令就知道了: mysql> grant replication slave on *.* -> to 'abc'@'192.0.0.2' identified by '123'; 格式:mysql> GRANT REPLICATION SLAVE ON *.* -> TO ...
此文被围观1401 分类: 数据库 标签:  ·····

mysql 忘记密码2013-05-15

mysql 忘记密码解决方法 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对 外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全 状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。 2.修改MySQL的登录设置: # vi /etc/my.cnf 在[mysqld]的段中加上一句:skip-grant-tables 例如: [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock skip-grant-tables 保存并且退出vi。 3.重新启动mysqld # /etc/init.d/mysqld restart Stopping MySQL: [ OK ] Starting MySQL: [ OK ] 4.登录并修改MySQL的root密码 # /usr/bin/mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 to server version: 3.23.56 Type 'help;' or ...
此文被围观967 分类: 数据库 标签:  ·····

MYSQL修改字段默认值2013-05-15

MYSQL修改字段默认值 alter table tablename alter column drop default; (若本身存在默认值,则先删除) alter table tablename alter column set default 't5';(若本身不存在则可以直接设定) 如果是主键,这样修改是失败的! 就这样修改: alter TABLE tablename AUTO_INCREMENT=100000...
此文被围观1058 分类: 数据库 标签:  ····

MYSQL的随机查询的实现方法及查询优化2013-08-09

MYSQL的随机抽取实现方法。举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1。 但是,后来我查了一下MYSQL的官方手册,里面针对RAND()的提示大概意思就是,在ORDER BY从句里面不能使用RAND()函数,因为这样会导致数据列被多次扫描。但是在MYSQL 3.23版本中,仍然可以通过ORDER BY RAND()来实现随机。 但是真正测试一下才发现这样效率非常低。一个15万余条的库,查询5条数据,居然要8秒以上。查看官方手册,也说rand()放在ORDER BY 子句中会被执行多次,自然效率及很低。 You cannot use a column with RAND() values in an ORDER BY clause, because ORDER BY would evaluate the column multiple times. 搜索Google,网上基本上都是查询max(id) * rand()来随机获取数据。 SELECT * FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MAX(id) FROM `table`)) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id ASC LIMIT 5; 但是这样会产生连续的5条记录。解决办法只能是每次查询一条,查...
此文被围观1655 分类: 数据库 标签:  ······

mysql concat函数分析2013-05-03

php无限分类,有可能要用到这个函数。 MySQL concat函数是MySQL数据库中众多的函数之一,下文将对MySQL concat函数的语法和使用进行说明,供您参考和学习。 MySQL concat函数使用方法: CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。 注意: 如果所有参数均为非二进制字符串,则结果为非二进制字符串。 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。 一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如: SELECT CONCAT(CAST(int_col AS CHAR), char_col) MySQL concat函数可以连接一个或者多个字符串,如 [php] mysql> select concat('10'); +--------------+ | concat('10') | +--------------+ | 10 | +--------------+ 1 row in set (0.00 sec) mysql> select concat('11','22','33'); +------------------------+ | concat('11','22','33') | +------------------------...
此文被围观1080 分类: 数据库 标签:  ·····

配置ruby下的mysql连接2013-04-26

把Mysql安装目录中bin目录下的libmysql.dll 复制到ruby安装目录的bin目录下(一般是c:\ruby\bin下) 到http://rubyforge.org/frs/?group_id=627 下载rdoc-2.4.3.gem (注意:只能用迅雷下,直接另存为后,文件后缀名将变成非.gem的东东),然后把rdoc-2.4.3.gem复制到c:\ruby\down下(down目录是我自己建的),然后命令行: [php] cd c:\ruby\down gem install rdoc-2.4.3.gem [/php] 此举是为了后面顺利安装mysql for ruby的文档 安装mysql for ruby的驱动,命令行键入: gem install mysql 把mysql.so复制到C:\ruby\lib\ruby\site_ruby\1.8\i386-msvcrt下(mysql.so文件如果本机找不到,可在http://rubyforge.org/frs/?group_id=904 下载InstantRails-2.0-win.zip解压后得到)//这个不是必须的 然后就可以在代码中连接了: [php] require "mysql" dbc=Mysql.real_connect('localhost','root','123456','rails_development') res=dbc.query('select * from tbl_...
此文被围观885 分类: 数据库 标签:  ···

MySQL 数据类型分析(一),MySQL 数据类型讲解2013-04-24

做PHP开发这块一直在用mysql数据库,虽然对其基本的一些字段信息还是能理解,但是都不是很完全和系统!在后期对mysql数据进行优化的时候也出现了盲点,于是认真的学习一下mysql里的面知识很有必要! 数值类型 MySQL 的数值数据类型可以大致划分为两个类别,一个是整数,另一个是浮点数或小数。许多不同的子类型对这些类别中的每一个都是可用的,每个子类型支持不同大小的数据,并且 MySQL 允许我们指定数值字段中的值是否有正负之分或者用零填补。 表列出了各种数值类型以及它们的允许范围和占用的内存空间。 类型 大小 范围(有符号) 范围(无符号) 用途 TINYINT 1 字节 (-128,127) (0,255) 小整数值 SMALLINT 2 字节 (-32 768,32 767) (0,65 535) 大整数值 MEDIUMINT 3 字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值 INT或INTEGER 4 字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值 BIGINT 8 字节 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,...

mysql命令mysql_unbuffered_query和mysql_query区别2013-04-12

刚看到写一同行写的这篇文章,以前没有看到过!感觉比较实用,转载了! 以前做数据库连接的时候一直都是用mysql_query获取结果集,最近在手册上看到还有一个是mysql_unbuffered_query函数,它的意思是不自动获取和缓存结果集,这样的好处是可以节省大量的内存。缺点是有两个函数不能使用,分别是mysql_num_rows和mysql_data_seek函数。 经过自己的比较的确是比用mysql_query要快一些,可能是数据比较大的时候比较明显吧。不管怎么说能快一点也好一点,各个方面都快一些,那么积累起来就很不错了。 文章来源:http://www.phpyuandi.com/read-17342.html...
此文被围观926 分类: 数据库 标签:  ····

php+mysql实现无限级分类,树型显示分类关系,php mysql分类缓存技术2013-04-11

最近在看一个关于无限分类的缓存技术。 php+mysql缓存技术的实现    本教程适合于那些对缓存SQL查询以减少数据库连接与执行的负载、提高脚本性能感兴趣的PHP程序员。 概述 许多站点使用数据库作为站点数据存储的容器。数据库包含了产器信息、目录结构、文章或者留言本,有些数据很可能是完全静态的,这些将会从一个缓存系统中得到的极大好处。 这样一个系统通过把SQL查询的结果缓存到系统的一个文件中存储,从而阻止连接数据库,构造查询与取得返回结果而提高了响应时间。 有些系统数据库并不是放在WEB服务器上的,这样需要一个远程连接(TCP或者其它类似的),或者从数据库中获取大量的数据,这样你得忍受更多时间,这决定于系统响应时间与资源利用。 前提 本教程使用MySQL作为数据库。你需要安装MySQL(www.mysql.com下载是有效的)和激活PHP MYSQL扩展(默认情况是激活的)。 由于要查询数据库,你需要知识一些SQL(结构化查询语言)的基本常识。 缓存SQL查询结果 为什么要缓存查询结果? 缓存查询结果能极大地改进脚本执行时间和资源需求。 缓存SQL查询结果也允许你通过后期处理数据。如果你用文件缓存去存储全部脚本的输出结果(HTML输出),这样可能是行不通的。 当你执行一个SQL查询时,点典的处理过程是: <!--[if !supportLists]-->l        <!--[endif]-->连接数据库 <!--[if !supportLists]--&g...

mysql null的用法2013-04-07

今天在做一个统计的时候,有些字段信息为空null 以为是这样写的查询条件: [php] select * from tbl_msg where PID = ''; [/php] 发现没有查询到数据, 改成: [php] select * from tbl_msg where PID = NULL; [/php] 也没有数据出来. 最后修改成了 [php] select * from tbl_msg where PID IS NULL; [/php] 平时注意一下mysql的这些基本命令还是有好处的....
此文被围观731 分类: 数据库 标签:  ····

MySQL命令行导出数据库2013-03-23

MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Server 4.1\bin (或者直接将windows的环境变量path中添加该目录) 2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名 如我输入的命令行:mysqldump -u root -p news > news.sql (输入后会让你输入进入MySQL的密码) (如果导出单张表的话在数据库名后面输入表名即可) 3、会看到文件news.sql自动生成到bin文件下 命令行导入数据库: 1,将要导入的.sql文件移至bin文件下,这样的路径比较方便 2,同上面导出的第1步 3,进入MySQL:mysql -u 用户名 -p 如我输入的命令行:mysql -u root -p (输入同样后会让你输入MySQL的密码) 4,在MySQL-Front中新建你要建的数据库,这时是空数据库,如新建一个名为news的目标数据库 5,输入:mysql>use 目标数据库名 如我输入的命令行:mysql>use news; 6,导入文件:mysql>source 导入的文件名; 如我输入的命令行:mysql>source news.sql; MySQL备份和还原,都是利用mysqldump、mysql和source命令来完成的。 1.Win32...
此文被围观1703 分类: 数据库 标签:  ····

IP数据库,新浪在线IP数据库,根据IP获取所在城市2013-03-20

获取当前ip信息,查询IP所属地区信息 新浪 IP 地址查询接口: http://counter.sina.com.cn/ip?ip=139.256.0.9 接口形式:http; 返回内容:javascript 片段; 查询地址:可以指定 IP 地址; 返回的数据格式: [js] var ILData = new Array("125.39.140.252","中国", "天津市", "", "网通"); if (typeof(ILData_callback) != "undefined") { ILData_callback(); } [/js] 使用JS代码进行调取: [php] <script language="javascript" type="text/javascript" src="http://counter.sina.com.cn/ip"></script> <script>document.write("你的IP是:"+ILData[0]+",来自:"+IPData[2]);</script> [/php] 有道 IP 地址查询接口: http://www.youdao.com/smartresult-xml/se...
此文被围观2123 分类: 数据库 标签:  ···

mysql表添加注释,为mysql表添加注释语句,mysql更改字段注释2013-02-19

给MySQL数据库中的表添加注释的命令: alter table 表名 comment '注释'; 如果要更改列(字段)的注释,则麻烦一点: 首先查看表的:show full column from 表名; 然后再执行: alter table 表名 modify column '字段名' smallint(6) comment '注释'; 将原来的字段类型和长度不变 加上comment 就可以了...
此文被围观1331 分类: 数据库 标签:  ·····

本站使用ThinkPHP框架开发读图网主题,目前托管在阿里云,图片由读图网提供. 蜀ICP备12031064号

Copyright © 2011-2017adophper.com All Rights Reserved.