9core.com - 九核技术交流网

九百链
为了更好的解决实际工作中遇到的问题,本站开设了QQ群 ASP+PHP+JSP+.NET①:9793624
ASP+PHP+JSP+.NET②:17775294
网站通告: 新开设QQ群,群号:17775294 九核WEB技术专业论坛 官方QQ群 9793624
搜索: 您的位置主页> 程序开发 > 数据库技术 >
  • 2008-05-27MySQL从旧的版本升级为新的版本全攻略
  • 一:从版本3.23升级到4.10 4.10新特性:支持事务处理和存储过程 升级过程的注意事项: 1:升级采用直接复制安装文件的方法,简单实用,但要注意相关的配置更改; 2:直接复制备份的数据库不能通过复制的方法恢复,因此须采用mysqldump方法备份; 3:mysql4.1的用户管理与3.23有所不同,user表中增加了字段max_questions、max_updates、 max_connections,可以对不同的mysql用户进行不同设置,如果是备份/恢复用户就可以将max_questions、max_updates设置大些,具体设置值根据数据库的实际情况而定。 升级步骤: 1: 停止当前MySQL服务 #/www/mysql/bin/mysqladmin shutdown 2:备份数据文件 #cp –R /www/mysql/ /www/backup/ 使用mysqldump命令备份 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27MySQL数据库用户帐号管理基础知识详解
  • MySQL管理员应该知道怎样通过指定哪些用户可连接到服务器、从哪里进行连接,以及在连接 时做什么,来设置MySQL用户账号。MySQL3.22.11引入了两个更容易进行这项工作的语句:GRANT 语句创建MySQL用户并指定其权限,REVOKE 语句删除权限。这两个语句充当mysql数据库中的授权表的前端,并提供直接操纵这些表内容的可选择的方法。GRANT 和REVOKE 语句影响以下四个表: 授权表 内容 user 可连接到服务器的用户和他们拥有的任何全局特权 db 数据库级的特权 tables_priv 表级特权 columns_priv 列级特权 还有第五个授权表( host),但它不受GRANT 或REVOKE的影响。 当您为某个用户发布GRANT 语句时,应在user表中为该用户创建一个项。如果该语句指定了所有全局特权(管理权限或用于所有数据库的权限),则这些指定也被记录在user表中。如 果指定了数据库、表或列的权限,它们将记录在db、tables_priv 和columns_priv表中。 使用GRANT 和REVOKE语句比直接修改授权表更容易。但是,建议您最好通过阅读 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27怎样在MySQL的数据库中定义外键详解
  • 定义数据表 假如某个电脑生产商,它的数据库中保存着整机和配件的产品信息。用来保存整机产品信息的表叫做 pc;用来保存配件供货信息的表叫做parts。 在pc表中有一个字段,用来描述这款电脑所使用的CPU型号; 在parts表中相应有一个字段,描述的正是CPU的型号,我们可以把它想成是全部CPU的型号列表。 很显然,这个厂家生产的电脑,其使用的CPU一定是供货信息表(parts)中存在的型号。这时,两个表中就存在一种约束关系(constraint)——pc表中的CPU型号受到parts表中型号的约束。 首先我们来创建parts表: CREATE TABLE parts (... 字段定义 ...,model VARCHAR(20) NOT NULL,... 字段定义 ...); 接下来是PC表: CREATE TABLE pc (... 字段定义 ...,cpumodel VARCHAR(20) NOT NULL,... 字段定义 ...}; .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27MySQL数据库中的Show命令具体用法
  • MySQL中有很多的基本命令,show命令也是其中之一,在很多使用者中对show命令的使用还容易产生混淆,本文汇集了show命令的众多用法。 a. show tables或show tables from database_name; -- 显示当前数据库中所有表的名称。 b. show databases; -- 显示mysql中所有数据库的名称。 c. show columns from table_name from database_name; 或show columns from database_name.table_name; -- 显示表中列名称。 d. show grants for user_name; -- 显示一个用户的权限,显示结果类似于grant 命令。 e. show index from table_name; -- 显示表的索引。 f. show status; -- 显示一些系统特定资源的信息,例如,正在运行的线程数量。 g. show variables; -- 显示系统变量的名称和值。 h. show processlist; -- 显示系统中正 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27一起从基础入手来打开MySQL数据库之门
  • 1、使用SHOW语句找出在上当前存在什么数据库: > SHOW DATABASES; +----------+ | Database | +----------+ | mysql | | test | +----------+ 3 rows in set (0.00 sec) 2、创建一个数据库abccs : mysql> CREATE DATABASE abccs; 注意不同对大小写的敏感。 3、选择你所创建的数据库: mysql> USE abccs Database changed 此时你已经进入你刚才所建立的数据库abccs。 4、 创建一个数据库表: 首先看现在你的数据库中存在什么表: mysql> SHOW TABLES; Empty set (0.00 sec) 说明刚才建 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27解析mysql 8小时空闲后连接超时的问题
  • 问:怎样才能解决mysql 8小时空闲后连接超时的问题? 答:当应用程序和数据库建立连接时,如果超过了8个小时,应用程序句不会去访问数据库,数据库就会出现断掉连接的现象 。这时再次访问就会抛出异常,异常如下: Communications link failure due tounderlying exception: ** BEGIN NESTED EXCEPTION ** java.io.EOFException STACKTRACE: java.io.EOFException    at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1913)    at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2304)    at com.mysql. .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27详细讲解MySQL数据库中的安全配置步骤
  • 详细讲解MySQL数据库的安全配置MySQL 是完全网络化的跨平台关系型数据库系统,同时是具有客户机/服务器体系结构的分布式数据库管理系统。它具有功能强、使用简便、管理方便、运行速度快、安全 可靠性强等优点,用户可利用许多语言编写访问MySQL 数据库的程序,特别是与PHP更是黄金组合,运用十分广泛。 由于MySQL是多平台的数据库,它的默认配置要考虑各种情况下都能适用,所以在我们自己的使用环境下应该进行进一步的安全加固。作为一个MySQL的系统管理员,我们有责任维护MySQL数据库系统的数据安全性和完整性。 MySQL数据库的安全配置必须从两个方面入手,系统内部安全和外部网络安全,另外我们还将简单介绍编程时要注意的一些问题以及一些小窍门。 2、系统内部安全: 首先简单介绍一下MySQL数据库目录结构。MySQL安装好,运行了 mysql_db_install脚本以后就会建立数据目录和初始化数据库。如果我们用MySQL源码包安装,而且安装目录是 /usr/local/mysql,那么数据目录一般会是/usr/local/mysql/var。数据库系统由一系列数据库组成,每个数据库包含一 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27怎样可以在Windows上安装多个Mysql
  • 问:如何在Windows上安装多个Mysql? 答:具体方法如下: 1.正常安装Windows版的Mysql,例如安装在d:\mysql文件夹里; 2.按照常规配置好Mysql; 3.复制备份安装好的文件夹,比如备份到另外一个文件夹,或者命名为“复件mysql"; 4.运行卸载程序删除安装的MYSQL和文件夹; 5.把备份的mysql文件夹,重新恢复原来的名字,或还原到原来的位置上; 6.再次运行安装程序,安装在另外一个目录,例如:“d:\mysql2"。配置端口为3307; 现在,后面安装的第二个Mysql——mysql2肯定是可以正常运行的,下面让起初安装的第一个Mysql 服务正常运行: 在cmd命令行模式下,进入第一个Mysql的\bin文件夹。 执行mysql-nt install mysql2命令。作用是为Mysql安装一个服务,服务名是mysql2,你也可以自己改名字,比如mysql5,那么命令就是: mysql-nt install .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27PHP 和 MySQL 开发中要注意的8个技巧
  • LAMP 架构的网站,我以前注重的多是安装/配置方面的,讲述开发的相对较少,因为自己从事开发也少。本文的原文当然也来自:Published on The O'Reilly Network (http://www.oreillynet.com/)http://www.oreillynet.com/pub/a/onlamp/2002/04/04/webdb.html看了以后,颇有启发,以前开发中遇到的一些问题,迎刃而解。所以翻译出来和大家共享。1. PHP 中数组的使用在操作数据库时,使用关联数组(associatively-indexed arrays)十分有帮助,下面我们看一个基本的数字格式的数组遍历: $temp[0] = "richmond";$temp[1] = "tigers";$temp[2] = "premiers"; for($x=0;$x{echo $temp[$x];echo " ";}?> .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27大家来优化 Sysctl、Apache、MySQL
  • 服务器的负载能力,很大程度上取决于系统管理员的配置和优化能力。相同的硬件、不同的软件配置,会造成截然不同的效果。下面我将给大家介绍一下如何优化 sysctrl, Apache 以及 MySQL 。请注意,所有配置均为取决于个人,请根据自己的实际情况做调整。 配置Sysctl 编辑此文件: nano -w /etc/sysctl.conf 如果该文件为空,则输入以下内容,否则请根据情况自己做调整: # Controls source route verification # Default should work for all interfaces net.ipv4.conf.default.rp_filter = 1 # net.ipv4.conf.all.rp_filter = 1 # net.ipv4.conf.lo.rp_filter = 1 # net.ipv4.conf.eth0.rp_filter = 1 # Disables IP source routing # Defau .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27Win2K下配置asp+cgi+php+mysql
  • 安装win2K,安装IIS ,其中Indexing Service, FrontPage 2000 Server Extensions, Internet Service Manager (HTML) 这几个别装,还有其它的一些,总之不用的都别装。(根据安全原则,最少的服务+最小的权限=最大的安全。) 首先,打开internet管理器(开始-->程序-->管理-->Internet服务管理)如果照上面所安装的,里面有一个默认站点和一个smtp的服务项选默认站点,删除其下面的所有目录。(按你键盘上的delete键)停掉iis,最简单的方法:开始-->运行-->打入net stop iisadmin  选择Y回车 (启动的命令是:net start w3svc)把C盘的Inetpub目录彻底删掉(停掉iis后才能删),在其它盘新建一个目录在IIS管理器中将默认站点的主目录指向刚才新建的目录如果你需要什么权限的目录可以自己慢慢建,需要什么权限开什么。 (特别注意写权限和执行程序的权限,没有绝对的必要千万不要给,默认是没给的,所以你不用研究,呵呵..) 应用程序配 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27MYSQL用户管理员ROOT弱密码攻击战
  • 1、连接到对方MYSQL 服务器 mysql -u root -h 192.168.0.1 mysql.exe 这个程序在你安装了MYSQL的的BIN目录中。   2、让我们来看看服务器中有些什么数据库 mysql>show databases; MYSQL默认安装时会有MYSQL、TEST这两个数据库,如果你看到有其它的数据库那么就是用户自建的数据库。    3、让我们进入数据库 mysql>use test; 我们将会进入test数据库中。    4、查看我们进入数据库中有些什么数据表 mysql>show tables; 默认的情况下,test中没有任何表的存在。 以下为关键的部分    5、在TEST数据库下创建一个新的表; my .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-27MySQL数据库中root权限丢失解决方法
  • 一天不小心把ROOT的权限改到最小了(只能登录,什么都做不了),这可急死我了.重装的话太麻烦,而且里面有很多的用户,一个个重新弄不知道到什么时候。后来我想了一个办法,先把当前服务器的MySQL服务停止,把MySQL DATa目录下的mysql目录改名为mysql_OLD,到另一个服务器下把mysql目录下的/data/mysql目录复制到对应目录,然后启动MySQL服务,使用另一服务器下的root 的帐号登录到PHPmyadmin,进去之后可以看到有全部的操作权限了,但这个数据表中没有当前服务器中的数据库项目和用户信息。这时再找到mysql_OLD数据库,进去之后到user表,找到第一个 root localhost表段,修改:把所有的N改为Y。然后再停止mysql服务,把新复制过来的mysql删除,把mysql_old更名为mysql,再启动服务器后用root登录,发现权限已经全部回来了。 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-26看的明明白白 表已满错误出现方式有数种
  • 对于连接问题,服务器错误日志是有用的信息源。如果服务器是用“--log-warnings”选项启动的,在错误日志中可能会发现下述消息: 010301 14:38:23 Aborted connection 854 to db: 'users' user: 'josh' 如果“Aborted connections”(放弃连接)消息出现在错误日志中,可能的原因是: 1.客户端程序在退出之前未调用MySQL_close()。 2.客户端的空闲时间超过wait_timeout或interactive_timeout秒,未向服务器发出任何请求。 3.客户端在数据传输中途突然结束。 出现这类情况时,服务器将增加“Aborted_clients”(放弃客户端)状态变量。 出现下述情况时,服务器将增加“Aborted_clients”(放弃客户端)状态变量。 ·客户端不具有连接至数据库的权限。 ·客户端采用了 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-26爱写就写 Mysql避免表已满的错误出现
  • 表已满错误出现的方式有数种: ·你正在使用低于3.23版的MySQL服务器,而且“内存中”临时表超过了tmp_table_size字节。要想避免该问题,可使用“-O tmp_table_size=val”选项以便mysqld增加临时表的大小,或在发出有问题的查询之前,使用SQL选项SQL_BIG_TABLES。 也可以使用“--big-tables”选项启动mysqld。它与使用针对所有查询的SQL_BIG_TABLES完全相同。 自MySQL 3.23起,该问题应不再出现。如果“内存中”临时表超过tmp_table_size,服务器会自动将其转换为基于磁盘的MyISAM表。 ·你正在使用InnoDB表,并超出了InnoDB表空间。在该情况下,解决方法是增加InnoDB表空间。 ·你正在仅支持2GB文件的操作系统上使用ISAM或MyISAM表,数据文件或索引文件达到了该限制值。 ·你正在使用MyISAM表,而且表所需的空间超过内部指针允 .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-26如何解决Mysql无法创建文件/写入文件
  • 如果对某些查询遇到下述类型的错误,它意味着MySQL不能为临时目录下的结果集创建临时文件: 无法创建/写入文件'sqla3fe_0.ism'。 前述错误是Windows平台上的典型消息,Unix平台上的消息与之类似。 一种更正方式是使用“--tmpdir”选项启动mysqld,或在选项文件的[mysqld]部分增加该选项。例如,要想指定目录C:emp,可使用: [mysqld]tmpdir=C:/temp 目录C:emp必须存在,并有足够的空间允许MySQL写入它。请参见4.3.2节,“使用选项文件”。 该错误的另一个原因可能是许可事宜。请确认MySQL服务器能够写入tmpdir目录。 此外,还用使用perror检查错误代码。服务器无法写入表的一个原因是文件系统已满。 shell> perror 28错误代码28:磁盘上无剩余空间   .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-26轻轻松松解决MySQL中文件未找到的问题
  • 如果遇到“ERROR '...'未发现(errno: 23)”,“无法打开文件:... (errno: 24)”,或来自MySQL的具有errno 23或errno 24的其它错误,它表示未为MySQL服务器分配足够的文件描述符。你可以使用perror实用工具来了解错误编号的含义: shell> perror 23 错误代码23:文件表溢出 shell> perror 24 错误代码24:打开文件过多 shell> perror 11 错误代码11:资源暂时不可用 这里的问题是,mysqld正试图同时打开过多的文件。你可以通知mysqld不要一次打开过多文件,或增加mysqld可用文件描述符的数目。 要想通知mysqld将一次打开的文件控制在较小的数目上,可降低table_cache系统变量的值(),从而减少表高速缓冲(默认值为64)。降低max_connections的值也能降低打开文件的数目(默认值为100)。 要想更改mysqld可用的文件描述符的数目,可在mysqld_safe上使用“--open-f .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-26不许你无视我 解决MySQL忽略用户现象
  • 如果遇到下述错误,表示当启动MySQLd时或重新加载授权表时,在用户表中发现具有非法密码的账户。 发现用户'some_user'@'some_host'密码错误:忽略用户。 作为其结果,许可系统将简单忽略账户。 在下面的介绍中,指明了可能的原因和问题的更正措施: 1.或许,你正打算用旧的用户表运行新版本的mysqld。执行mysqlshow mysql user检查Password(密码)列是否短于16个字符,通过该方式可检查该问题。如果结果是肯定的,可运行脚本/add_long_password脚本更正该问题。 2.账户具有旧的密码(8字符长),而且未使用“--old-protocol”选项启动mysqld。更新用户表中的账户,使之具有新的密码,或使用“--old-protocol”选项重启mysqld。 3.在用户表中未使用PASSWORD()函数指定了密码。使用mysql用新密码更新用户表中的账户,务必使用PASSWORD()函数: 4. mysql> UPDATE user S .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-26安全第一:使用MySQL要注意的23个事项
  • MySQL提示的23个注意事项:1.如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就需要使用SSH隧道来加密该连接的通信。2.用set password语句来修改用户的密码,三个步骤,先“mysql -u root”登陆数据库系统,然后“mysql> update mysql.user set password=password('newpwd')”,最后执行“flush privileges”就可以了。3.需要提防的攻击有,防偷听、篡改、回放、拒绝服务等,不涉及可用性和容错方面。对所有的连接、查询、其他操作使用基于ACL即访问控制列表的安全措施来完成。也有一些对SSL连接的支持。4.除了root用户外的其他任何用户不允许访问mysql主数据库中的user表;加密后存放在user表中的加密后的用户密码一旦泄露,其他人可以随意用该用户名/密码相应的数据库;5.用grant和revoke语句来进行用户访问控制的工作;6.不使用明文密码,而是使用md5()和sha1()等单向的哈系函数来设置密码;7. .... [阅读全文]
  • 来源:互联网作者:
  • 2008-05-26安全第一:使用MySQL要注意的23个事项
  • MySQL提示的23个注意事项:1.如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就需要使用SSH隧道来加密该连接的通信。2.用set password语句来修改用户的密码,三个步骤,先“mysql -u root”登陆数据库系统,然后“mysql> update mysql.user set password=password('newpwd')”,最后执行“flush privileges”就可以了。3.需要提防的攻击有,防偷听、篡改、回放、拒绝服务等,不涉及可用性和容错方面。对所有的连接、查询、其他操作使用基于ACL即访问控制列表的安全措施来完成。也有一些对SSL连接的支持。4.除了root用户外的其他任何用户不允许访问mysql主数据库中的user表;加密后存放在user表中的加密后的用户密码一旦泄露,其他人可以随意用该用户名/密码相应的数据库;5.用grant和revoke语句来进行用户访问控制的工作;6.不使用明文密码,而是使用md5()和sha1()等单向的哈系函数来设置密码;7. .... [阅读全文]
  • 来源:互联网作者:
共有364条记录,19页,当前第 41 2 3 4 5 6 7 8 9 10 >>
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助