Partition by range is for numeric based columns like date,int. which works like values less than 10 in partition p1 and values less than 20 in partition p2, so on. It does'nt work with varchar type columns.
So I suggest you to Go for Partition by List.
ALTER TABLE experiantest
.experiantest
PARTITION BY LIST COLUMNS (city)(
partition p1 values in('miami',california'),
partition p2 values in('mexico','rio'));
Refer the link below for more info. http://dev.mysql.com/doc/refman/5.5/en/partitioning-columns-list.html