+=head1 Multiple databases handling commands
+
+=head2 select
+
+ $r->select( $dbindex ); # 0 for new clients
+
+=cut
+
+sub select {
+ my ($self,$dbindex) = @_;
+ confess dump($dbindex) . 'not number' unless $dbindex =~ m{^\d+$};
+ $self->_sock_send_ok( 'SELECT', $dbindex );
+}
+
+=head2 move
+
+ $r->move( $key, $dbindex );
+
+=cut
+
+sub move {
+ my ( $self, $key, $dbindex ) = @_;
+ $self->_sock_send( 'MOVE', $key, $dbindex );
+}
+
+=head2 flushdb
+
+ $r->flushdb;
+
+=cut
+
+sub flushdb {
+ my $self = shift;
+ $self->_sock_send_ok('FLUSHDB');
+}
+
+=head2 flushall
+
+ $r->flushall;
+
+=cut
+
+sub flushall {
+ my $self = shift;
+ $self->_sock_send_ok('flushall');
+}
+
+=head1 Sorting
+
+=head2 sort
+
+ $r->sort("key BY pattern LIMIT start end GET pattern ASC|DESC ALPHA');
+
+=cut
+
+sub sort {
+ my ( $self, $sort ) = @_;
+ $self->_sock_result_bulk_list( "SORT $sort" );
+}
+
+=head1 Persistence control commands
+
+=head2 save
+
+ $r->save;
+
+=cut
+
+sub save {
+ my $self = shift;
+ $self->_sock_send_ok( 'SAVE' );
+}
+