Skip to main content

Posts

Showing posts from January, 2013

උබුන්ටු වල Close Button වමෙන් දකුනට ගෙනියන හැටි

මම මේ ලගදි blog කියව කියව යද්දි දැක්කා Linux Mint ගැන පෝස්ට් එකක්. ඉතින් ඒකේ කියලා තිබුනා සමහරු Close Button එක දැක්කාම අව්ල් වෙනවා කියලා. ඉතින් සමාන්‍යෙයන් අපි පුරුදු තැනට Close Button එක ගන්න හැටි තමා මම මේ පෝස්ට් එකෙන් කියන්න හදන්නේ.පලවෙනියට මේක ලේසියෙන් කරන්න නම් gnome-tweak-tool එක install කරගන්න ඕනේ. Ctrl+Alt+T press කරන්න. ඊට පස්සේ පල්ලෙහා තියන කමාන්ඩ් එක ටයිප් කරන්න.sudo apt-get install gconf-editorඊට පස්සේ පහල තියන කමාන්ඩ් එක ටයිප් කරන්න.gconf-editorදැන් එන වින්ඩෝ එකේ / expand කරලා apps/ metacity/ general click කරන්න. ඊට පස්සේ button_layout එකේ Value එක menu:minimize,maximize,close කියලා වෙනස් කරලා. වින්ඩෝ එක ක්ලෝස් කරන්න. ඇප්ලයි වුනේ නැත්තම් රිස්ටාර්ට් කරලා බලන්න.

Mac OS Mountain Lion on VirtualBox

සෑහෙන කාලයක් මම Mac OS පාවිච්චි කරන්න ආසාවෙන් හිටියත් මට ඇපල් කම්පුටරයක් නැති හන්දා පාවිච්චි කරන්න බැරි වුනා. ඒත් මම දැනන් හිටියේ නෑ සාමාන්‍ය කම්පුටර් වලට Mac OS දාන්න පුලුවන් කියලා. ඉතින් මම දවසක් එහෙ මේහෙ ඉන්ටර්නෙට් එකේ යනකොට දැක්කා Mac OS Virtual Box වල ඉන්ස්ටෝල් කරන කතාවක් ඉතින් මම ඒ පෝස්ට් එකේ තියන විදිහට ට්‍රයි කරලා Mac OS දැම්මා. තාම වැඩි දවසක් නැති හන්දා කියන්න තරම් ලොකු දෙයක් නැ Mac OS ගැන.ඒත් සරලවම කිව්වොත් යුනික්ස් බේස් හන්දා ලොකු වෙනසක් පේන්නේ නැ මට ලිනක්ස් වගේම තමා ගොඩක් දේවල්. මම ඉන්ස්ටෝල් කලේ Intel DH67CL Motherboard එකක. ඔයාලත් කැමති නම් ට්‍රයි කරලා බලන්න.http://www.macbreaker.com/2012/07/mountain-lion-virtualbox.html

Mac OS Virtual Machine

For a long time I was suffering because I wanted to use Mac OS. But I didn’t have any apple computer to use it. Also I didn’t try to install Mac OS to Virtual Machine. But after joining Pearson I saw few Apple machines daily. And my eager to use Mac OS got exponentially increased. Then I started to thing about Mac OS Virtual Machine. I had downloaded a genuine Mac OS installation long ago. But it was not a good one to install Mac OS to Virtual. So then I found this article.http://www.macbreaker.com/2012/07/mountain-lion-virtualbox.htmlAnd I tried with its instruction in little bit different way. I used Ubuntu 12.10 as host operating system. My computer had Core i7 processor with DH67CL motherboard. So I was able to successfully install and run Mac OS Mountain Lion as a Virtual Machine on Ubuntu 12.10 with Oracle VirtualBox.

MongoDB – Part 2

මම ඊයේ ලියපු පෝස්ට් එකෙන් මොන්ගෝ ඩිබි ස්ටාර්ට් කරන හැටි. අපි බලමු කොහොමද මොන්ගෝ ඩිබි වල ඩේටාබේස් හදන හැටි ඩේටා සේව් කරන, ඩේටා අරගන්න විදිහ.හැම දේටම කලින් අපි දැන ගන්න ඕන දෙයක් තමා මොන්ගෝ ඩිබි වල ස්ට්‍රක්චර් එක. මොකද අපි දැනට පුරුදු වෙලා ඉන්න ටේබල් වලට වැඩිය ටිකක් වෙනස් දෙයක් තමා මොන්ගෝ ඩිබි වල තියෙන්නේ.මොන්ගො ඩිබි වල  Database, Collection, Document කියන තුන අපි දැනගන්න ඕනේ. ඩේටාබේස් එක නම් අපි සමාන්‍යෙයන් දන්න ඩේටාබේස් එකම තමා. කලෙක්ෂන් කියන්නේ ටේබල් වලට සමාන දෙයක්. හැබැයි කලෙක්ෂන් වල හරියටම Schema එකක් නැහැ. Document කියන්නේ රෙකෝඩ් එකක් වගේ දෙයක්.අපි බලමු ඩේටා බේස් එකක් හදන්නේ කොහොමද කියලා. ඩේටා බේස් එකක් හැදෙන්නේ ඇත්තටම අපි ඒ ඩේටා බේස් එක ඇතුලේ ඩේටා සේව් කලොත් හරි නැත්නම් කලෙක්ෂන් එකක් හරි හැදුවොත් තමා.use <database name>අපිට sample කියලා ඩේටාබේස් එකක් හදන්න ඕනේනම් ඉස්සෙල්ලා සිලෙක්ට් කරන්න ඕනේ. ඒකට පහල තියන කමාන්ඩ් එක මොන්ගෝ ඩිබි ෂෙල් එකේ ටයිප් කරන්න ඕනේ. කලින් පෝස්ට් එකේ නතර කරපු තැනින් ඉස්සරහට තමා මම මේ පොස්ට් එක ලියන්නේ.use sampleඉහත කමාන්ඩ් එකෙන් අලුත් ඩේටාබේස් එකට මාරු වු…

MongoDB

මම කලින් පෝස්ට් එකේදි කිව්වා NoSQL ගැන. ඒවගේම මොන්ගෝ ඩිබි කියන්නේ NoSQL ඩේටාබේස් එකක්. ඉතින් මොන්ගො ඩිබි කියන්නේ Document Base ඩේටා බේස් එකක්. අපි දන්න අනික් ඩේටාබේස් හැම එකක් වගේම දත්ත සේව් කරන්නෙ Record හැටියට. ඉතින් මේවායේ ඩේටා ටයිප්ස් තියනවා අලුතෙන් කොලම් ඇඩ් කරද්දි මුලු ටේබල් එකටම බලපානවා ඒවගේ නානප්‍රකාර ගැටලු තියනවා. නමුත් මොන්ගො ඩිබි වල මේවගේ සිමාවල් නැ. මොකද දත්ත සේව් වෙන්නේ Document විදිහට ඒ ඒ Document එකට අදාල කොලම් වගේ දේවල් තියෙන්න පුලුවන්. කිසිම වෙලාවක් Schema එකකට බැදිලා නෑ. මේක ඇත්තටම එක පැත්තකින් පාඩුවක් වුනත් තව පැත්තකින් වාසියක්. අපි බලමු මොන්ගො ඩිබි එක්ක වින්ඩෝස් වලදි වැඩ කරන්නේ කොහොමද කියලා. http://www.mongodb.org/downloadsඉහත තියන සයිට් එකට ගිහින් පලවෙනියට මොන්ගො ඩිබි ඩව්න්ලෝඩ් කරගන්න ඕනේ. හැබැයි මේක අනික් ප්‍රසිද්ද DBMS වගේ ලොකු ඩව්න්ලෝඩ් එකක් නෙමෙයි. 60MB-70MB අතර ප්‍රමාණයක් තමයි ගොඩක් වෙලාවට වෙන්නේ. ඊට පස්සේ අපි කරන්න ඕනේ මේක extract කරන එක.අපි හිතමු D:\ ඩ්‍රයිව් එකට extract කලා කියලා. දැන් අපි D:\ ඩ්‍රයිව් එකේ හදන්න ඕන ෆෝල්ඩර් වගයක් තියනවා. ඒ තමා පහත තියන ෆෝල…

Big Data සහ NoSQL

මම මේ දවස් වල ගොඩක්ම සර්ච් කරන්නේ ඉගෙන ගන්නේ ඩේටාබේස් ගැන. මොකද මම වැඩ කරන්නේ ඩේටාබේස් ටීම් එකක හන්දා. දැනට ලෝකේ තියන ඩේටාබේස් සිස්ටම් වල වෙනසක් වෙන්න යනවා කියන එක තමයි හැමෝගෙම අදහස. මොකද මේ Big Data නිසා.මෙච්චර කාලයක් Relational Database තමා හැම සිස්ටම් එකක්ම වාගේ පාවිච්චි කලේ. ඒත් දැන් අලුතෙන් එන ගොඩක් සිස්ටම් වලට Relational Database පාවිච්චි කරන එක අඩු වෙන්න වගේ යන්නේ. මොකද මේ ඩේටාබේස් වලින් ගොඩක් අඩු කාර්යක්ෂමතාවයක් තමා ලැබෙන්නේ. ඒත් මේ NoSQL ඩේටාබේසස් ඔක්කෝම වීශේෂ කාර්යකටම තමා නිර්මාණය කරලා තියෙන්නේ. ඒ ඒ  NoSQL ඩේටාබේස් එකිනෙකට වෙනස් කටයුතු වලට පාවිච්චි කරන්න තමා නිර්මාණය කරලා තියෙන්නේ. ඒවාට උදාහරණ කිහිපයක් තමා,MongoDB Cassandra RavenDB TitanDB HBase සමහර විට මේක පරිගණක පද්ධති වල ලොකු වෙනසකට යොමු කරන දෙයක් වෙන්නත් පුලුවන්

Retrieving data from MongoDB database using PHP

Previous post I wrote about how to install MongoDB driver on PHP when we are using windows. In linux (I mean Ubuntu) there were no issues on installing that. So after that I want to connect to MongoDB to take data. <!DOCTYPE html>
<html>
    <head>
        <title>MongoDB Connection</title>
    </head>
    <body>
        <?php
        $m = new MongoClient();

        $db = $m->phpdb;

        $col = $db->pageind;

        $rs = $col->find();

        foreach ($rs as $rec)
        {
            echo "<a href='" . $rec['url'] . "'>" . $rec['name'] . "</a><br />";
        }
            ?>
    </body>
</html>Below Code part I inserted between PHP document. This MongoDB server is not running in auth mode. If your MongoDB is running in auth mode and in different ports, you can specify them with connection string. And my database structure was like this.Database : phpdbColl…

PHP MongoDB Driver not working!

In Semester 3 I have PHP unfortunately not MongoDB. So I was doing PHP practicals while I was doing my office things. So suddenly MongoDB came to my mind. Then I tried to connect to MongoDB with PHP. Although I have already tried with .NET. I never tried MongoDB with PHP. So I installed IIS 8.0 and PHP 5.3.1. 
Then I downloaded the driver from github. Extracted it to C:\Program Files (x86)\PHP\v5.3\ext\.  I added the entry to php.ini properly. Then I restarted IIS using iisreset. But MongoDB Driver for PHP was not loaded properly. Then I was checking and doing so many things but nothing worked.
Try this way!
1. Download driver from github.
2. Extract zip file.
3. Copy php_mongo-1.3.2RC1-5.3-vc9-nts.dll to C:\Program Files (x86)\PHP\v5.3\ext\. And rename it to php_mongo.dll.
4. Then take properties of php_mongo.dll and unblock executable. 5. Then go to C:\Program Files (x86)\PHP\v5.3\ and open php.ini as Administrator and add below line to end of the file.

extension=php_mongo.dll

6. Th…

How to setup a replication set in MongoDB?

I just wanted to setup a replication set in MongoDB to check the behavior of MongoDB replica set.
For this demonstration I use MongoDB 2.2.0 and PowerShell 2.0.
First I want to create directories for MongoDB replication instances. I’m going to for a replication set with three nodes. So because of the I need to create there MongoDB data directories.

New-Item -ItemType Directory -Path \data\
New-Item -ItemType Directory -Path \data\repDb1
New-Item -ItemType Directory -Path \data\repDb2
New-Item -ItemType Directory -Path \data\repDb3
New-Item -ItemType Directory -Path \log

Now copy MongoDB Binaries to the drive that you ran above PowerShell commands. Change directory to MongoDB bin. And create three separate configuration files in MongoDB bin folder with notepad or any other plain text editor.
config1.cnf config2.cnf config3.cnf Create config1.cnf file with below content.

logpath=d:\log\log1.txt dbpath=d:\data\repDb1 port=9991 replSet=samplecluster rest=true
Create config2.cnf file with belo…

Start Here! Learn HTML5

Another good book for starter from Oreilly. If you don’t know how to save a HTML file with your notepad. You can learn it from this book too. And gradually author moves to advanced topics. Also this book contains CSS.Author don’t use confusable terminology. So its really cool for novice people. I got addicted when reading first chapter. At last chapter he introduce Microsoft Expression Web. It is also again nice tool to develop web pages. And you can learn best practices of HTML from this book too. For example read below extract.The nonbreaking space entity &nbsp; is very popular for creating spaces, and in fact,
many WYSIWYG web site creation programs like Microsoft Expression Web and Adobe
Dreamweaver insert them for you when you press the spacebar. Don’t use nonbreaking
spaces instead of good layout techniques, though. For example, if something needs to be
indented a certain amount, use the correct HTML tags and styles for indenting it, don’t just
“space over” with a half-dozen &…

DISTINCT and ORDER BY together

When we are using DISTINCT we can’t use ORDER BY as we want. If you are going to use DISTINCT when you have ORDER BY, all ODER BY attributes should be in SELECT phrase.USE AdventureWorks2012;

-- Works fine
SELECT BusinessEntityID
FROM HumanResources.Employee
ORDER BY BirthDate;

-- Fails
SELECT DISTINCTBusinessEntityID
FROM HumanResources.Employee
ORDER BY BirthDate;

-- If you are going to sort withdistinct result should consist attribute that you are sorting
SELECT DISTINCT BusinessEntityID
FROM HumanResources.Employee
ORDER BY BusinessEntityID;

Otherwise it fails with following error.ORDER BY items must appear in the select list if SELECT DISTINCT is specified.