How can I add some additional fields into the register form


I would like add some addtional fields like first name, last name, address, country, tel,... into the register form. The form appears after the subscription page (sign-up)
And if I do this, is it sure that these additional information take its place in the user database?
The user should be able to change these information later on his account page (e.g. address)
How can I realize this?

Thank you,