Posts Tagged ‘Database’
服务器的大用户量的承载方案
一、前言
二、编译安装
三、 安装MySQL、memcache
四、 安装Apache、PHP、eAccelerator、php-memcache
五、 安装Squid
六、后记
一、前言,准备工作
当前,LAMP开发模式是WEB开发的首选,如何搭建一个高效、可靠、稳定的WEB服务器一直是个热门主题,本文就是这个主题的一次尝试。
我们采用的架构图如下:
引用——– ———- ————- ——— ————
| 客户端 | ===> |负载均衡器| ===> |反向代理/缓存| ===> |WEB服务器| ===> |数据库服务器|
——– ———- ————- ——— ————
Nginx Squid Apache,PHP MySQL
eAccelerator/memcache准备工作:
引用服务器: Intel(R.......
More>>
通过提供用于操作数据库表的类和对象,对象关系映射工具有助于提高生产率。Python 最好的对象关系映射工具是 SQLObject —— 一个开放源码项目,它几乎完成编程数据库所需的所有操作。本文介绍 SQLObject 及其功能。阅读本文后,您将能够不编写任何 SQL 代码而连接 Python 与数据库。
当面向对象编程范例满足大多数数据库的关系范 例时,通常会看到对象关系映射。对象关系映射是这两个世界的桥梁。它允许您定义与数据库表对应的类。然后您可以使用这些类及其实例上的方法来与数据库交 互,而不用编写 SQL。使用对象关系映射并不意味着不需要知道关系数据库如何工作,而是不必要编写 SQL,从而避免编程错误。
您可以找到一打以上的操作 SQL 数据库的开放源码 Python 包,这还没包括用于连接 Python 与特定数据库的特殊用途模块。SQLObject 是其中最好的模块。它是简单易用的完全对象关系映射包。SQLObjec.......
More>>
Query Cache 在提高数据库性能方面具有非常重要的作用。
其设定也非常简单,仅需要在配置文件写入两行: query_cache_type 和 query_cache _size,而且 MySQL 的 query cache 非常快!而且一旦命中,就直接发送给客户端,节约大量的 CPU 时间。
当然,非 SELECT 语句对缓冲是有影响的,它们可能使缓冲中的数据过期。一个 UPDATE 语句引起的部分表修改,将导致对该表所有的缓冲数据失效,这是 MySQL 为了平衡性能而没有采取的措施。因为,如果每次 UPDATE 需要检查修改的数据,然后撤出部分缓冲将导致代码的复杂度增加。
query_cache_type 0 代表不使用缓冲, 1 代表使用缓冲,2 代表根据需要使用。
设置 1 代表缓冲永远有效,如果不需要缓冲,就需要使用如下语句:
SELECT SQL_NO_CACHE * FROM my_table WHERE …
如果设置为 2 ,需要开启缓冲,可以用如下语句:
SELECT SQL_CACHE * FROM my_table .......
More>>
别人的今天问起,随手转了一下,很简单,这里截图说明一下
用phpmyadmin导入库test中后发现,这个库中有UTF8和latin1两种编码,如下图
先把test备份为test1库,在WIN下操作的话就是把:路径\MySQL\data下的test目录备份一下,改名为test1目录
在phpmyadmin中把所有为UTF8的表删除,在命令行中运行
D:\PHPServer\MySQL\bin>mysqldump -uroot -p –quick –compatible=mysql40 –default-character-set=latin1 –extended-insert=FALSE test > d:/zxs.sql
说明一下D:\PHPServer\MySQL\bin是我的安装目录,test为数据库,d:/zzz.sql为生成的数据文件,程序会提示你输入root的用户密码,输入后,等几分钟,zxs.sql就生成好了
通过phpmyadmin建立一个新库,库名:test2 ,采集字符集设定为utf8-general-li
再将刚才生成sql文件导入新数据库
D:\PHPServer\MySQL\bin>mysql -uroot -p –default-chara.......
More>>
SQL分类:
DDL—数据定义语言(Create,Alter,Drop,DECLARE)
DML—数据操纵语言(Select,Delete,Update,Insert)
DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)
首先,简要介绍基础语句:
1、说明:创建数据库
Create DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:备份sql server
— 创建 备份数据的 device
USE master
EXEC sp_addumpdevice ‘disk’, ‘testBack’, ‘c:\mssql7backup\MyNwind_1.dat’
— 开始 备份
BACKUP DATABASE pubs TO testBack
4、说明:创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
根据已有的表创建新表:
A:create table tab_new like tab_old (使用旧表创建新表)
B:create table tab_new as select col1,col2… from tab_old definit.......
More>>
在linux下安装MySQLdb还是有一些问题的,稍不注意可能就会老报错。这里我做一些简单的介绍。
首先,去下载MySQLdb的源码包,这里有: https://sourceforge.net/project/showfiles.php?group_id=22307
这里下的是 MySQL-python-1.2.2.tar.gz
下载完了后,解压缩
tar zxf MySQL-python-1.2.2.tar.gz
之后会产生一个叫 MySQL-python-1.2.2 的目录,进去。
这里就要做一些配置了,往往问题就在这个地方。
要想编译这个模块,就必须要先安装开发版的mysql,这里不说mysql怎么安装,假设装好了,并且装到/opt/mysql下。
这个目录下有一个叫 site.cfg 的文件,我们要修改的设置就在这里面,它的内容如下:
[options]
# embedded: link against the embedded server library
# threadsafe: use the threadsafe client
# static: link against a static library (probably required for embedded)
embedded =.......
More>>
