changing permalink gives 404 error for old links

Well, if your /%postname%/ part stays the same, .htaccess redirection can help you pointing old urls to the new ones like this:

RewriteEngine On
RewriteRule ^$ /my-articles [R=301,L]

Put this into your .htaccess file and it should redirect http://your.tld/my-article to http://your.tld/my-articles/my-article.

Beware that this will redirect everything, not only some post types or sth. like that. But .htaccess is very powerful and gives you lot of options to redirect or rewrite URLs.