sudo apt-get remove mysql-server sudo apt-get autoremove After this Install the MySQL 5.6 by using the followingsudo apt-get install mysql-client-5.6 mysql-client-core-5.6 sudo apt-get install mysql-server-5.6
Moving from MySQL to PostgreSQL
Moving from MySQL to PostgreSQL
Some Differences Between PostgreSQL + MySQL
In general, PostgreSQL makes a strong effort to conform to existing database standards, where MySQL has a mixed background on this. If you're coming from a background using MySQL or Microsoft Access, some of the changes can seem strange (such as not using double quotes to quote string values).
- MySQL uses nonstandard '#' to begin a comment line; PostgreSQL doesn't. Instead, use '–' (double dash), as this is the ANSI standard, and both databases understand it.
- MySQL uses ' or " to quote values (i.e. WHERE name = "John"). This is not the ANSI standard for databases. PostgreSQL uses only single quotes for this (i.e. WHERE name = 'John'). Double quotes are used to quote system identifiers; field names, table names, etc. (i.e. WHERE "last name" = 'Smith').
- MySQL uses ` (accent mark or backtick) to quote system identifiers, which is decidedly non-standard.
- PostgreSQL is case-sensitive for string comparisons. The field "Smith" is not the same as the field "smith". This is a big change for many users from MySQL and other small database systems, like Microsoft Access. In PostgreSQL, you can either:
- Use the correct case in your query. (i.e. WHERE lname='Smith')
- Use a conversion function, like lower() to search. (i.e. WHERE lower(lname)='smith')
- Use a case-insensitive operator, like ILIKE or ~*
- Database, table, field and columns names in PostgreSQL are case-independent, unless you created them with double-quotes around their name, in which case they are case-sensitive. In MySQL, table names can be case-sensitive or not, depending on which operating system you are using.
- PostgreSQL and MySQL seem to differ most in handling of dates, and the names of functions that handle dates.
- MySQL uses C-language operators for logic (i.e. 'foo' || 'bar' means 'foo' OR 'bar', 'foo' && 'bar' means 'foo' and 'bar'). This might be marginally helpful for C programmers, but violates database standards and rules in a significant way. PostgreSQL, following the standard, uses || for string concatenation ('foo' || 'bar' = 'foobar').
- There are other differences between the two, such as the names of functions for finding the current user. MySQL has a tool, Crash-Me, which can useful for digging this out. (Ostensibly, Crash-Me is a comparison tool for databases; however, it tends to seriously downplay MySQL's deficiencies, and isn't very objective in what it lists: the entire idea of having procedural languages (a very important feature for many users!) is relegated to a single line on the bottom fifth of the document, while the fact that MySQL allows you to use || for logical-or (definitely non-standard), is listed way before this, as a feature. Be careful about its interpretations.)
Read more
https://wiki.postgresql.org/wiki/Things_to_find_out_about_when_moving_from_MySQL_to_PostgreSQL
Restore Mysql From Terminal
From Terminal
mysql -u root -p
create database name
use database name
SOURCE databse.sql // file path to you backup file
SOLR Configuration with Magento
Step By Stem Integration of SOLR on system With Magento Site :
Things we nedded :
1. JAVA Development Kit (JDK)
2. PHP
3. Apache Server
4. Solr extension (From Magento Connect )
If you are using Linix :
First open the Terminal :
Type :
rahul@rahul:~$ java -version (To check java is install or not ).
If not available then :
Follow this step ono by one :
rahul@rahul:~$ sudo rm /var/lib/dpkg/info/oracle-java7-installer*
rahul@rahul:~$ sudo apt-get purge oracle-java7-installer*
rahul@rahul:~$ sudo rm /etc/apt/sources.list.d/*java*
rahul@rahul:~$ sudo apt-get update
rahul@rahul:~$ sudo apt-get update
rahul@rahul:~$ sudo add-apt-repository ppa:webupd8team/java
rahul@rahul:~$ sudo apt-get install oracle-java7-installer
rahul@rahul:~$ java -version
Result :
rahul@rahul:~$ java version “1.7.0_04”
rahul@rahul:~$ Java(TM) SE Runtime Environment (build 1.7.0_04-b20)
rahul@rahul:~$ Java HotSpot(TM) 64-Bit Server VM (build 23.0-b21, mixed mode)
Now we have install java Successfully ;
Now come to apache server :
Install Apache server if not installed :
for 32-bit:
Type this on terminal or cmd :
rahul@rahul:~$ wget http://sourceforge.net/projects/xampp/files/XAMPP%20Linux/1.8.3/xampp-linux-1.8.3-2-installer.run/download
For 64-bit:
rahul@rahul:~$ wget http://sourceforge.net/projects/xampp/files/XAMPP%20Linux/1.8.3/xampp-linux-x64-1.8.3-2-installer.run/download
Now go to the download folder and rename the download file to :
xampp-linux-x64-1.8.3-2-installer.run
rahul@rahul:~$ sudo chmod +x xampp-linux-x64-1.8.3-2-installer.run
rahul@rahul:~$ sudo ./xampp-linux-x64-1.8.3-2-installer.run
To stop the XAMPP service:
rahul@rahul:~$ sudo /opt/lampp/lampp stop
To start the XAMPP service:
rahul@rahul:~$ sudo /opt/lampp/lampp start
Now we have install Lampp on our local server ;
still having any problem so visit :
http://ubuntuportal.com/2013/12/how-to-install-xampp-1-8-3-for-linux-in-ubuntu-desktop.html
Now we will install SOLR Server :
Download it from here : Download
Next unzip the package:
unzip solr-4.10.4.zip
Move newly created directory to /opt
Type this command on Terminal :
rahul@rahul:~$ sudo mv solr-4.10.4 /opt/
rahul@rahul:~$ cd /opt/solr-4.10.4/example/
if getting error bash permission denied or file directory not found, then provide permission to opt
by typing :
rahul@rahul:~$ sudo chmod 777 ‘/opt’ -R
rahul@rahul:~$ cd /opt
rahul@rahul:/opt$ cd solr
rahul@rahul:/opt/solr$ cd example
rahul@rahul:/opt/solr/example$ java -jar start.jar
Now it will show like this ;
4146 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.search.SolrIndexSearcher – Opening Searcher@5bcfdbdb[collection1] main
4152 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.rest.ManagedResourceStorage – File-based storage initialized to use dir: /opt/solr/example/solr/collection1/conf
4152 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.rest.RestManager – Initializing RestManager with initArgs: {storageDir=/opt/solr/example/solr/collection1/conf}
4163 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.rest.ManagedResourceStorage – Reading _rest_managed.json using file:dir=/opt/solr/example/solr/collection1/conf
4189 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.rest.ManagedResourceStorage – Loaded LinkedHashMap at path _rest_managed.json using file:dir=/opt/solr/example/solr/collection1/conf
4190 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.rest.ManagedResource – Loaded initArgs {} for /rest/managed
4190 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.rest.RestManager – Initializing 0 registered ManagedResources
4191 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.handler.component.SpellCheckComponent – Initializing spell checkers
4199 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.handler.component.SpellCheckComponent – Registering newSearcher listener for spellchecker: default
4199 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.handler.component.SpellCheckComponent – No queryConverter defined, using default converter
4213 [searcherExecutor-6-thread-1] INFO org.apache.solr.core.SolrCore – [collection1] Registered new searcher Searcher@5bcfdbdb[collection1] main{StandardDirectoryReader(segments_f:38:nrt _e(4.10.4):C5)}
4213 [coreLoadExecutor-5-thread-1] INFO org.apache.solr.core.CoreContainer – registering core: collection1
4214 [main] INFO org.apache.solr.servlet.SolrDispatchFilter – user.dir=/opt/solr/example
4215 [main] INFO org.apache.solr.servlet.SolrDispatchFilter – SolrDispatchFilter.init() done
4249 [main] INFO org.eclipse.jetty.server.AbstractConnector – Started SocketConnector@0.0.0.0:8983
Now go to the browser and type :
The solr server run on 8983 port .
Now open your magento site Admin panel and go to the extension magento connect :
and type this in extension field :
http://connect20.magentocommerce.com/community/JeroenVermeulen_Solarium
install it and proceed it .
Now return to admin panel :
And go to System -> Configuration -> Catalog -> and find :
In this panel open General setting and Solr server
Enabled it and in solr server every thing is already set
Click on test connection if the result is success :
then only solr will run correct :
Now one more thing to do that is very important and o it very carefully :
Go to you root directory :
or : open : opt/lampp/htdocs/magento-folder/app/code/community/JeroenVermeulen/Solarium/docs/
And copy two file :
1: Schema.xml
2. Solrconfig.xml
And paste it at given folder :
Note : before pasting take backup of that file :
folder : opt/solr/example/solr/collection1/conf/
Congratulation now you have successfully configured Solr to your magento site , now add category and products to see the solr working .
Go to you home page of you website and search your product :
For solr documentation visit :
1: http://lucene.apache.org/solr/
Download some important notes : Magento_For_Php_Mvc
OOPS
Class :
A class is used to specify the form of an object and it combines data representation and methods for manipulating that data into one neat package. The data and functions within a class are called members of the class.
ex->
<?php
class Rahul {
public $name ;
private $lastname;
protected $fullname ;
function Name() // method
{
echo "Rahul";
}
}
$name = new Rahul();
$name->Name();
?>
Object :
An individual instance of the data structure defined by a class . You defines a class once and then make many object that belongs to it . Object are also know as instance.
Example 1 ->
class Example {
public $name ;
public $item ;
function Sample(){
$this->test();
}
function Test(){
echo 'Test';
echo $this->item;
$regular = 500;
echo $regular ;
}
}
$e = new Example() ;
$e->Sample();
?>
Example 2 ->
<?php
class A
{
private $a;
function set($a)
{
$this->a=$a;
}
function disp()
{
echo $this->a."<br>";
}
};
$obj=array(new A(),new A,new A(),new A(),new A());
$data=array(10,20,30,40,50);
for($i=0;$i<count($obj);$i++)
{
$obj[$i]->set($data[$i]);
}
foreach($obj as $v)
$v->disp();
?>
Inheritance :
When a class is defined by inheriting existing function of a parent class then it is called inheritance. Here child class will inherit all or few member function and variables of a parent class.
Example ->
<?php
class Foo
{
public function printItem($string)
{
echo 'Foo: ' . $string . PHP_EOL;
}
public function printPHP()
{
echo 'PHP is great.' . PHP_EOL;
}
}
class Bar extends Foo
{
public function printItem($string)
{
echo 'Bar: ' . $string . PHP_EOL;
}
}
$foo = new Foo();
$bar = new Bar();
$foo->printItem('baz'); // Output: 'Foo: baz'
$foo->printPHP(); // Output: 'PHP is great'
$bar->printItem('baz'); // Output: 'Bar: baz'
$bar->printPHP(); // Output: 'PHP is great'
?>
Ploymorphism :
This is a object oriented concept where same function can be used for different purpose,
Example ->
<?php
class lineitem {
var $amount,$what;
function lineitem ($amount,$desc) {
$this->amount = $amount;
$this->what = $desc;
}
function getname () {
return $this->what;
}
function getval () {
return $this->amount;
}
}
class bill extends lineitem {
function bill ($amount,$desc) {
$this->amount = -$amount;
$this->what = $desc;
}
}
class income extends lineitem {
}
$acc[0] = new bill(15.40,"Break Rolls");
$acc[1] = new bill(17.75,"Carpet leaner");
$acc[2] = new income(37.84,"options added by Berks Folks");
$tot = 0;
$format = "%-35s ... %8.2f\n";
foreach ($acc as $item) {
$amount = $item->getval();
$whom = $item->getname();
printf($format, $whom,$amount);
$tot += $amount;
}
printf($format, "TOTAL ...",$tot);
?>
OUTPUT:
DerivedClass method called
In the above example, object $c of class DerievedClass is executed and passed to the processClass() method. The parameter accepted in processClass() is that of BassClass. Within the processClass() the method myMethod() is being called. Since the method is being called on the class variable of BaseClass, it would not be wrong to assume that myMethod() of class BaseClass will be called. But, as per the definition “When the decision to invoke a function call is made by inspecting the object at runtime it is called Polymorphism”, myMethod() will be called on object DerievedClass. The reason why this happens is because the object of DerievedClass is being passed and hence the method myMethod() of DerievedClass will be called.
function name will remain same but it make different number of arguments and can do different task.
Overloding :
Overloading is an ability of one function to perform different tasks, i.e, it allows creating several methods with the same name which differ from each other in the type of the input and the output of the function.
Overloading can be used with functions and members.
Example ->
int volume(int s), double volume(double r,int h), long volume(long l,int b,int h)
Depending on the parameter passed the corresponding function will be called.
Data Abstraction :
Any representation of data in which the implementation data are hidden(abstracted) is known as data abstraction.
Example – >
<?php abstract class Cheese { //can ONLY be inherited by another class } class Cheddar extends Cheese { } $dinner = new Cheese; //fatal error $lunch = new Cheddar; //works! ?>
Encapsulation :
Refers To a concept where we encapsulate all the data and member function together to form object.
PHP Frameworks
TOP TEN BEST PHP FRAMEWORKS FOR 2014
PHP is a very powerful and well known platform. Almost 50% of the web is powered by PHP. If you are a PHP developer then you should know that framework make things simple, manageable and fun to work with. There are many PHP frameworks out there so its probably hard to chose one. In this post i have compiled a list of top ten PHP frameworks for 2014. Every framework stated here has it’s advantages and disadvantages. In this post i have briefly described about each framework and their uses. Enjoy!
Laravel
Laravel is an amazing PHP framework for web artisans. Build huge enterprise applications, or simple JSON APIs, Write powerful controllers, or slim restful routes. Laravel is perfect for jobs of all sizes.
Phalcon
Phalcon is a web framework implemented as a C extension offering high performance and lower resource consumption.
Symfony
Symfony is a PHP framework for web projects. It speed up the creation and maintenance of your PHP web applications. Replace the repetitive coding tasks by power, control and pleasure.
Code Igniter
CodeIgniter is a powerful PHP framework with a very small footprint, built for PHP coders who need a simple and elegant toolkit to create full-featured web applications. CodeIgniter is a proven, agile & open PHP web application framework powering the next generation of web apps.
Yii
Yii is a high-performance PHP framework best for developing Web 2.0 applications. Yii comes with rich features: MVC, DAO/ActiveRecord, I18N/L10N, caching, authentication and role-based access control, scaffolding, testing, etc. It can reduce your development time significantly.
Aura
If you like clean code, fully decoupled libraries, and truly independent packages, then the Aura project is for you. Download a single package and start using it in your project today, with no added dependencies. The primary goal of Aura is to provide high-quality, well-tested, standards-compliant, decoupled libraries that can be used in any codebase. This means you can use as much or as little of the project as you like.
Cake
CakePHP makes building web applications simpler, faster and require less code.
Zend
Zend Framework 2 is an open source framework for developing web applications and services using PHP 5.3+. Zend Framework 2 uses 100% object-oriented code and utilises most of the new features of PHP 5.3, namely namespaces, late static binding, lambda functions and closures.
Flight
Flight is a fast, simple, extensible framework for PHP. Flight enables you to quickly and easily build restful web applications.
Kohana
An elegant HMVC PHP5 framework that provides a rich set of components for building web applications.











