Likely this is happening because you are using a custom page template. Try the following. I’ve commented the steps along the way. Hope it helps.
<?php
//get the current page
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
//pagination fixes prior to loop
$temp = $query;
$query = null;
//custom loop using WP_Query
$query = new WP_Query( array(
'post_status' => 'publish',
'orderby' => 'date',
'order' => 'ASC'
) );
//set our query's pagination to $paged
$query -> query('post_type=post&posts_per_page=5'.'&paged='.$paged);
if ( $query->have_posts() ) :
while ( $query->have_posts() ) : $query->the_post();
?>
<li>
<?php if ( has_post_thumbnail()) : ?>
<?php the_post_thumbnail();?>
<?php endif; ?>
<div class="someclass" >
<h2><?php the_title(); ?></h2>
<?php the_content(); ?>
</div>
</li>
<?php endwhile;?>
<?php //pass in the max_num_pages, which is total pages ?>
<div class="pagenav">
<div class="alignleft"><?php previous_posts_link('Previous', $query->max_num_pages) ?></div>
<div class="alignright"><?php next_posts_link('Next', $query->max_num_pages) ?></div>
</div>
<?php endif; ?>
<?php //reset the following that was set above prior to loop
$query = null; $query = $temp; ?>