Adminer, a great tool for accessing databases


Most of the web developers specially who used to write code in PHP, including myself using phpmyadmin for a very long time for database management. I myself used this tool for last 6 years or so. But recently I was introduced to a great tool called adminer while facing problem to install phpmyadmin on homestead box.

adminer-logo

Long story short, it is a single php file which has almost all the functionality that phpmyadmin has with a bunch of other useful features. Also it supports mySQL, SQLite 2 & 3, PostgreSQL, Oracle, MS SQL, Firebird, SimpleDB, MongoDB and ElasticSearch where phpmyadmin only supports mysql. It is also extremely lightweight and portable as it is only one file. The compressed file is only 231 kB and if you use the English version without 36 other language’s translation it turns into 167 kB only. If you use mySQL only, then you reduce the size to 155 kB for translated version and 94 kB for english only version. That’s insane.

You can find a full comparison with phpmyadmin to their site. It can work with various plugins and has a bunch of themes. It’s released under GPL2 and Apache License and it’s totally free to use.

Besides that, it has a Debian package, Arch Linux package, WordPress plugin, Drupal module, Joomla extension (1, 2) Moodle plugin, TYPO3 extension, CMS Made Simple Module, Laravel, AMPPS, and Nette package.

After finding this, I just uninstall phpmyadmin form my machine and immediately switched to adminer. Hopefully, you would like it also.

উবুন্টুতে রেডিস ইনস্টল


রেডিস একটি চমৎকার ইন-মেমরি, ওপেন সোর্স কি-ভ্যালু স্টোর। রেডিসকে আপনি বিভিন্ন কাজে ব্যবহার করতে পারেন। আপনার ক্যাশ ড্রাইভার, সেশন ড্রাইভার হিসেবে যেমন ব্যবহার করতে পারেন, তেমনি ডেটা স্টোরেজ হিসেবেও ব্যবহার করতে পারেন। রেডিস অনেকটা মেমক্যাশের মত, মানে এটি ইন-মেমরি ডেটা স্টোরেজ, ফলে এটি অত্যন্ত ফাস্ট কাজ করতে পারে, তবে এতে বিল্ট ইন পারসিসটেন্স ম্যাকানিজম আছে। ফলে মেমক্যাশের মত সার্ভার রিস্টার্ট দিলে ডেটা হারিয়ে যায় না।

রেডিস

রেডিসের আছে ৭ ধরনের ডেটা স্টোর করার সুবিধা। এগুলো হচ্ছে, স্ট্রিং, সেট, সর্টেড সেট, লিস্ট, হ্যাশ, বিটম্যাপ এবং হাইপারলগলগ। এর আছে অত্যন্ত চমৎকার ডকুমেন্টেশন এবং বিশাল হেল্পফুল কমিউনিটি।

আপনি প্রায় সব প্রোগ্রামিং ভাষার জন্য রেডিসের ড্রাইভার পাবেন। ফলে আপনার যদি বিভিন্ন প্রোগ্রামিং ভাষার মধ্যে ডেটা আদান-প্রদানের প্রয়োজন পড়ে, সেক্ষেত্রে রেডিস হতে পারে চমৎকার একটি সল্যুশন। এছাড়াও রেডিসের রয়েছে বিল্টইন পাব-সাব ম্যাকানিজম। ধরুন, মাইসিক্যুয়েলে আপনি এইমাত্র একটি কোয়েরি করে একটা টেবিল থেকে ডেটা নিয়ে এসেছেন। আপনি কোয়েরি করার পর পরই  সে টেবিলে অন্য কেই নতুন একটি রো ইনসার্ট করলো। সেক্ষেত্রে আরেকটি কোয়েরি করার আগ পর্যন্ত আপনি সেই নতুন রো টি সম্পর্কে জানতে পারবেন। কিন্তু আপনি যদি রেডিস ব্যবহার করে থাকেন এবং সেই কি-তে সাবস্ক্রাইব করে রাখেন, তবে আপনি একটা নতুন ডেটা ইনসার্ট হওয়ার সাথে সাথেই পেয়েই যাবেন।

এবার চলুন দেখি রেডিস কিভাবে ইনস্টল করবেন। প্রথমেই বলে নেই, আমি উইন্ডোজ ব্যবহার করি না অনেকদিন হলো। তাই উইন্ডোজে এটা কিভাবে ইনস্টল করবেন সে ব্যাপারে ধারনা দিতে পারছি না। তবে আপনি গুগল সার্চ করলেই পেয়ে যাবেন। আমি আপনাদেরকে দেখাবে লিনাক্সে কিভাবে রেডিস ইনস্টল করবেন। আমি উবুন্টু ব্যবহার করছি। আপনি অন্য যে কোন লিনাক্স ডিস্ট্রিবিউশনে বা ম্যাক অপারেটিং সিস্টেমেও একই কমান্ডের মাধ্যমে রেডিস ইনস্টল করতে পারবেন।

প্রথমেই রেডিস কম্পাইল করার জন্য আপনার পিসিতে কিছু ডিপেন্ডেন্সি লাগবে। সেগুলি ইনস্টল করতে পারবেন নিচের কমান্ডের মাধ্যমে-

sudo apt-get install build-essential
sudo apt-get install tcl8.5

এরপর আমরা রেডিসের অফিশিয়াল সাইট http://redis.io থেকে রেডিসের লেটেস্ট ভার্সনের সোর্স কোড ডাউনলোড করবো। আপনি চাইলে নিচের কমান্ডের সাহায্যেও ডাউনলোড করতে পারেন-

wget http://download.redis.io/releases/redis-3.0.2.tar.gz

এবার ডাউনলোড করা ফাইলটি আনটার করে নিন-

tar xzf redis-3.0.2.tar.gz

এবার রেডিসকে কম্পাইল এবং ইনস্টল করার জন্য নিচের কমান্ডগুলো দিন-

make
make test
sudo make install

রেডিসকে যদি আপনার সিস্টেমে গ্লোবালি ইনস্টল করতে চান তাহলে টার্মিনালে নিচের কমান্ড দুইটি লিখুন-

cd utils
sudo ./install_server.sh

আপনি যদি রেডিসকে একটি সার্ভিস হিসেবে ইনস্টল করতে চান, অর্থাৎ আপনার পিসি স্টার্ট হবার সাথে সাথেই রেডিস সার্ভারকে চালু করতে চান তাহলে নিচের কমান্ডটি টার্মিনালে লিখুন-

sudo update-rc.d redis_6379 defaults

ব্যাস, আপনার পিসিতে রেডিস ইনস্টল করা হয়ে গেছে। টেস্ট করার জন্য টার্মিনালে লিখুন-

redis-cli

আপনি আউটপুট হিসেবে রেডিস কনসোল দেখতে পারবেন-

127.0.0.1:6379>

তো শুরু করে দিন রেডিস ব্যবহার করা। হ্যাপি কোডিং…

উবুন্টু ১৪.০৪ ভার্সনে পিএইচপি ৫.৬ ইনস্টল করা


উবুন্টুতে পিএইচপি

উবুন্টুর সর্বশেষ এলটিএস রিলিজ হচ্ছে উবুন্টু ১৪.০৪। কিন্তু এর অফিশিয়াল রিপোজিটরিতে পিএইচপি ৫.৫.৯ ভার্সন দেয়া আছে। আপনি যদি উবুন্টুতে পিএইচপি ৫.৬ ভার্সন ইনস্টল করতে চান তাহলে সেটা অফিশিয়াল রিপোজিটরি থেকে করতে পারবেন না।

চিন্তার কিছু নেই। আপনি খুব সহজেই আদ্রেজ সুরির তৈরি করা পিপিএ যোগ করে, একটা কমান্ডের মাধ্যমেই পিএইচপি ৫.৬ ইনস্টল দিতে পারবেন। এর জন্য প্রথমে আপনাকে রিপোজিটরি যুক্ত করতে হবে নিচের কমান্ডের মাধ্যমে-

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php5-5.6

এবার রিপোজিটরি লিস্টিং আপডেট করুন, এবং কোন প্যাকেজ আপগ্রেড করার থাকলে সেটিও করুন। এই আপগ্রেড অবশ্য অপশনাল। আপনি চাইলে না করলেও পারেন।

sudo apt-get update
sudo apt-get upgrade

এবার নিচের কমান্ডের মাধ্যমে পিএইচপি ৫.৬ ইনস্টল করুন। তবে আপনার পিসিতে যদি আগে থেকেই পিএইচপি ইনস্টল করা থাকে তাহলে আপগ্রেড কমান্ডের মাধ্যমে অলরেডি পিএইচপি ৫.৬ ইনস্টল হয়ে যাওয়ার কথা।

sudo apt-get install php5

এবার চেক করতে টার্মিনালে লিখুন-

php -v

তবে এ ধরনের থার্ড পার্টি পোর্টগুলোতে বাগ থাকতে পারে। তাই আমার পরামর্শ প্রোডাকশনে পিএইচপির এই ভার্সন ব্যবহার করার দরকার নেই। তবে আপনি আপনার ডেভেলপমেন্ট মেশিনে এটি ইনস্টল করতে পারেন। প্রোডাকশনে আপগ্রেড করার জন্য উবুন্টু অফিশিয়াল রিলিজের জন্য অপেক্ষা করুন।

লিনাক্সে ব্যবহার করুন গুগোল ড্রাইভ


সকাল বেলাই মেজাজ খারাপ হয়ে গেল। গুগোল এন্ড্রয়েড(লিনাক্সের জন্য উইএসবি ড্রাইভার নাই), পিকাসার(সাপোর্ট বন্ধ) পর এবার তাদের নতুন সার্ভিস গুগোল ড্রাইভেও লিনাক্স ব্যবহারকারীদের জন্য কিছুই রাখে নি। আমরা যারা ২৪/৭ লিনাক্স ব্যবহার করি তারা কি আঙ্গুল চুষবো?
যাইহোক, ফেবুতে অঞ্জন দা’র দেয়া একটা লিঙ্কে দেখলাম লিনাক্সেও নাকি গুগোল ড্রাইভের সেবা ব্যবহার করা যাবে। ঝটপট ট্রাই দিলাম। কাজও হল।  কি কি করা লাগবে আসুন জেনে নেই।
প্রথমেই আপনাকে নতুন রিপো এড করতে হবে। টার্মিনালে লিখুন-

sudo add-apt-repository ppa:invernizzi/google-docs-fs

এরপর আপডেট করতে লিখুন-

sudo apt-get update

এবার ইনস্টল করুন-

sudo apt-get install google-docs-fs

এবার হোম ফোল্ডারে Drive নামের একটা ফোল্ডার তৈরী করুন। এবার একে একে নিচের কোডগুলো টার্মিনালে লিখুন-

cd Drive
gmount Drive username@gmail.com

username এর জায়গায় আপনার ইউজারনেম লিখুন, তারপর পাসওয়ার্ড দিন।
ব্যস এই ড্রাইভ ফোল্ডারে আপনার গুগোল ড্রাইভ মাউন্টেড হবে।

সূত্র

উবুন্টু বা মিন্টে পুরাতন সফটয়্যার ইনস্টলেশন


আপনি এত কস্ট করে উবুন্টু/মিন্টে বিভিন্ন সফটওয়্যার ইনস্টল করেছেন কিন্তু  নতুন করে আবার উবুন্টু/মিন্ট  ইনস্টল করলেই সবই শেষ। আবার অন্য পিসিতে উবুন্টু/মিন্ট সেট আপ করলেন কিন্তু প্রোয়জনীয় সফটওয়্যার ইন্টারনেট সংযোগ ছাড়া দিতে পারছেন না। এই সমস্যা সমাধানের জন্য আপনাকে শুধু ছোট একটা কাজ করতে হবে।

আমরা যে সকল সফটওয়্যার ইনস্টল করি তা সাধারনত জমা থাকে এখানে-

file system/var/cache/apt/archieves

এটাকে বলা হয় উবুন্টু/ মিন্টের লোকাল রিপোজিটরি।

প্রথমে আমাদের করণীয় হচ্ছে যা তাহলো আমাদের ডাউনলোডকৃত সফটওয়্যার সমূহ archieves ফাইল থেকে হার্ড ডিস্কের যে-কোন নিরাপদ জায়গাতে রাখি। যদি নরমালি কপি করা যায় না তখন রুট পারমিশন নিয়ে করতে হতে পারে। সেজন্যে-

alt+f2 চেপে application launcher এ গিয়ে gksu nautilus লিখে এন্টার দিতে হবে।

বা টার্মিনালে গিয়ে লিখুন-

gksudo nautilus

অত:পর ফাইল গুলো কপি করে রাখুন।

এখন নতুন পিসি বা যে পিসিতে সফটওয়্যার সমূহ ইনস্টল করতে চান তার ডেস্কটপে ফাইলটা কপি করে রাখুন এখন টার্মিনালে লিখুন-

cd Desktop/folder name

[যদি আপনার ফোল্ডারটির নাম archieves হয় তবে archieves লিখুন]

এরপর লিখুন-

sudo dpkg -i *.deb

ব্যস এখন থেকে আপনি নতুন করে উবুন্টু/মিন্টে আপনার পুরনো সব সফটয়্যার ইনস্টলেশন করে ব্যবহার করতে পারবেন।