You need to be careful with mime types as they're sent to the browser to help them interpret what way to render certain files.
Changing these two particular MIME types shouldn't hurt, but I'd be very wary of doing this in general. The mime type is sent with the headers for that particular file and changing those may result in unexpected behaviour with certain clients.
i.e. you can't really tell what will happen by changing mime types as such, as that's client specific. You'd need someone with experience of all the various web browsers to tell you in this case, or you'd need to go test it yourself. In general, that's what you'd need to be careful of.
As others have said semaphores are IPC (interprocess communications structures).
Semaphores like all IPC are used to allow different processes to communicate with each other.
They are basically counters that are created, accessed and destroyed using special system calls, such as sempost(3), semwait(3), semget(2) and semop(2). See sem_overview(7) on a linux system for a brief description.
The definition of communicate here is pretty primitive.
"Communicate" for semaphores means reading, incrementing or decrementing a counter via the system/library calls mentioned above.
The special thing about semaphores apart from the fact that they are is that only one process at a time can perform an operation on them, and the semaphore operations are guaranteed atomic, that is to say you can't get into a race condition over a semaphore as the kernel will not swap out a process that is performing a semaphore operation.
The other special thing is that they are created in shared memory which allows multiple processes to access them.
How they manifest/created is that programs create them using semget(2).
E.g. apache creates sempahores when it runs.
ipcs -l will tell you about the system's ipc resources.
You can manipulate some system semaphore and ipc related limits with sysctls.
Try sysctl kernel.sem
to view the sempahore related settings via sysctl.
If you want to persist any sysctl changes you try put them into /etc/sysctl.conf
.
Best Answer
TLDR Version: 99.999% of the time you will ignore them and just leave them empty.
They are used as part of the advanced features of phpMyAdmin. The MIME Type is the file type for the contents of the file and the transformation is how it is 'altered' for presentation.
e.g. If you have an image stored in a table and you tried to view it in phpmyadmin it would just show a bunch of garbage text but if you set the correct MIME type for the image and the correct transformation it could instead show the picture.
For more information see wikipedia for information on MIME Types and the phpMyAdmin documentation for information on transformations