The code is perfectly fine. You can change the minifacation/magnification settings (almost) any time you like. They will stay until you change them again.
The only thing you have to keep in mind is that GL_MIPMAP needs all mipmap levels defined. So you can only activate trilinear filtering when your texture actually has mipmaps.
No, there is no need to reload a texture.
Be sure to call glBindTexture before making those GL calls because the settings are part of the texture object.
Those are the definitions for POINT, BILINEAR. I’m not sure about trilinear because it could be
GL_LINEAR_MIPMAP_LINEAR, GL_NEAREST_MIPMAP_LINEAR, GL_LINEAR_MIPMAP_NEAREST, GL_NEAREST_MIPMAP_NEAREST
Anisotropy is an additional functionality which reduces the blur introduced by trilinear filtering when looking at a surface at a steep angle. See Wikipedia - Anisotropic filtering for more information.