Pull post name from value of a specific meta key

Here is a function that loops through all your posts and checks if the post_name is equal to your post_meta_value. If not it updates the post_name to whatever the post_meta value is.

function wpse_get_update_posts() {
     $posts = get_posts( array( 'posts_per_page' => -1 ) );

         foreach ( $posts as $post ) {
            if ( $post->post_name == get_post_meta( $post->ID, '_your_meta_key', true ) )
                continue;
           $my_post = array();
           $my_post['ID'] = (int) $post->ID;
           $my_post['post_name'] = get_post_meta( $post->ID, '_your_meta_key', true);
           wp_update_post( $my_post );
         }
}

You probably only want to run this function one time so add it to a plugin activation hook or call in a place that you can load WordPress once then delete it.