Hi Renan,
It's actually not a good idea to create user-defined tables or fields during the installation of the addon. The reason is that you may have more than one company on your system and then you'd have to uninstall and reinstall the addon for each company in order to create the objects on all databases. Instead, it's better to use something like the following:
During the normal startup of your addon, check to see if the fields and tables that you require already exist in the current database. Typically I just to a quick check for one or two key fields or tables rather than searching for them all (eg search for the last table that your addon needs to create) so it doesn't slow down the startup of the addon. If the fields/tables exist then the addon starts up as normal. If the fields/tables don't exist then ask the user if the addon should create them now (note: I always recommend you ask this because you don't want the addon to automatically create metadata objects in the database if there is a chance that other users are processing). If the user says Yes then run your routine to create all the objects you need.
Kind Regards,
Owen