刚接触mongoDB,一切从零开始。搞了一下午,搞定了安装,整理一下。 一.mongoDB的安装 我是在Linux下进行安装的,步骤如下: 1.
刚接触mongoDB,一切从零开始。搞了一下午,搞定了安装,整理一下。
一.mongoDB的安装
我是在Linux下进行安装的,,步骤如下:
1. 下载安装包
一定要注意自己的机器是32位还是64位,不然下来的包无法使用。我开始就是下错了包,安装后一执行就提示Floating point exception,白折腾半天。
下载页面,可以根据自己机器的不同选择适合的版本。
我下载的是static-2.5.0,32位版本。
2. 安装
其实安装过程很简单,解个压就行了
tar xvzf mongodb-linux-i686-static-2.5.0.tgz
3. 起动mongoDB
假设解压后的目录为 /home/qmhball/mongo,mangoDB相关的可执行文件位于/home/qmhball/mongo/bin目录下。
写一份简单的配置文件
mongod.conf
#数据目录
dbpath = /home/qmhball/mongo/db
port = 9304
bind_ip = 10.1.146.163
#日志目录
logpath = /home/qmhball/mongo/log/mongo.log
logappend = true
#以后台Daemon形式运行服务
fork = true
执行
cd /home/qmhball/mongo/bin
./mongod --config mongod.conf
成功启动后,你会在日志中看到类似下面的信息
Wed May 22 15:53:59.825 [initandlisten] MongoDB starting : pid=10527 port=9304 dbpath=/home/qmhball/mongo/db 32-bit host=web
4.测试
在bin目录下执行
./mongo --host 10.1.146.163 --port 9304
进入交互模式
键入
db.test.save( { a: 1 } )
db.test.find()
会得到
{ "_id" : ObjectId("519cebd23c053d9709065602"), "a" : 1 }
说明数据已被存入db
二.php扩展的安装
1.下载源码并解压
源码包地址
2.安装
假设解压目录为mongo-1.4.0
进入mongo-1.4.0目录,依次执行:
phpize
./configure
make
make install
安装成功后会得到类似下面的提示
Installing shared extensions: /usr/local/lib/php/extensions/no-debug-non-zts-20090626/
在此目录下你会找到mongo.so
3.修改php配置
在php.ini中加入
extension=/usr/local/lib/php/extensions/no-debug-non-zts-20090626/mongo.so
大功告成!
tips:如果是在apache等web service下运行记得重启服务,新的扩展才会生效。
4.测试
demo.php
$user = array(
'first_name' => 'MongoDB',
'last_name' => 'Fan',
'tags' => array('developer','user')
);
// Configuration
$dbhost = '10.1.146.163:9304';
$dbname = 'test';
// Connect to test database
$m = new Mongo("mongodb://$dbhost");
$db = $m->$dbname;
// Get the users collection
$users = $db->users;
//Insert this new document into the users collection
$res = $users->save($user);
var_dump($res);
$data = $users->findOne();
var_dump($data);
执行,得到
bool(true)
array(4) {
["_id"]=>
object(MongoId)#7 (1) {
["$id"]=>
string(24) "519cf324876d75714cb4e973"
}
["first_name"]=>
string(7) "MongoDB"
["last_name"]=>
string(3) "Fan"
["tags"]=>
array(2) {
[0]=>
string(9) "developer"
[1]=>
string(4) "user"
}
}

MySQLBLOBshavelimits:TINYBLOB(255bytes),BLOB(65,535bytes),MEDIUMBLOB(16,777,215bytes),andLONGBLOB(4,294,967,295bytes).TouseBLOBseffectively:1)ConsiderperformanceimpactsandstorelargeBLOBsexternally;2)Managebackupsandreplicationcarefully;3)Usepathsinst

The best tools and technologies for automating the creation of users in MySQL include: 1. MySQLWorkbench, suitable for small to medium-sized environments, easy to use but high resource consumption; 2. Ansible, suitable for multi-server environments, simple but steep learning curve; 3. Custom Python scripts, flexible but need to ensure script security; 4. Puppet and Chef, suitable for large-scale environments, complex but scalable. Scale, learning curve and integration needs should be considered when choosing.

Yes,youcansearchinsideaBLOBinMySQLusingspecifictechniques.1)ConverttheBLOBtoaUTF-8stringwithCONVERTfunctionandsearchusingLIKE.2)ForcompressedBLOBs,useUNCOMPRESSbeforeconversion.3)Considerperformanceimpactsanddataencoding.4)Forcomplexdata,externalproc

MySQLoffersvariousstringdatatypes:1)CHARforfixed-lengthstrings,idealforconsistentlengthdatalikecountrycodes;2)VARCHARforvariable-lengthstrings,suitableforfieldslikenames;3)TEXTtypesforlargertext,goodforblogpostsbutcanimpactperformance;4)BINARYandVARB

TomasterMySQLBLOBs,followthesesteps:1)ChoosetheappropriateBLOBtype(TINYBLOB,BLOB,MEDIUMBLOB,LONGBLOB)basedondatasize.2)InsertdatausingLOAD_FILEforefficiency.3)Storefilereferencesinsteadoffilestoimproveperformance.4)UseDUMPFILEtoretrieveandsaveBLOBsco

BlobdatatypesinmysqlareusedforvoringLargebinarydatalikeImagesoraudio.1) Useblobtypes (tinyblobtolongblob) Basedondatasizeneeds. 2) Storeblobsin Perplate Petooptimize Performance.3) ConsidersxterNal Storage Forel Blob Romana DatabasesizerIndimprovebackupupe

ToadduserstoMySQLfromthecommandline,loginasroot,thenuseCREATEUSER'username'@'host'IDENTIFIEDBY'password';tocreateanewuser.GrantpermissionswithGRANTALLPRIVILEGESONdatabase.*TO'username'@'host';anduseFLUSHPRIVILEGES;toapplychanges.Alwaysusestrongpasswo

MySQLofferseightstringdatatypes:CHAR,VARCHAR,BINARY,VARBINARY,BLOB,TEXT,ENUM,andSET.1)CHARisfixed-length,idealforconsistentdatalikecountrycodes.2)VARCHARisvariable-length,efficientforvaryingdatalikenames.3)BINARYandVARBINARYstorebinarydata,similartoC


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Zend Studio 13.0.1
Powerful PHP integrated development environment

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

Notepad++7.3.1
Easy-to-use and free code editor

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft
