Explain the difference between a static library and a dynamic library? - Static library is linked into the executable, while a dynamic library (or shared object) is loaded while the executable has started.
How do you create a static library? - If you have a collection of object (.o) files, you can do it by running ar command. Generally a static library has a .a extension, and you can link it into an executable by providing -l libraryname to gcc.
Where should the developed libraries be installed on the system? - GNU recommends /usr/local/bin for binaries and /usr/local/lib for libraries.
What’s LD_LIBRARY_PATH? - It’s an environment variable that lists all the directories which should be searches for libraries before the standard directories are searched.
How do you create a shared library? - Create the object file with -fPIC for position-independent code, then run gcc with -shared option.
How do you install a shared library? - Run ldconfig in the standard directory that it’s installed in.
What does ldd do? - It shows a list of installed shared libraries.
How do you dynamically load a library in your app? - Use dlopen()
What does nm command do? - It reports the list of symbols in a given library.
Shell scripting
· How do you find out what’s your shell? - echo $SHELL
· What’s the command to find out today’s date? - date
· What’s the command to find out users on the system? - who
· How do you find out the current directory you’re in? - pwd
· How do you remove a file? - rm
· How do you remove a - rm -rf
· How do you find out your own username? - whoami
· How do you send a mail message to somebody?
How do you show the currently running queries? - SHOW FULL PROCESSLIST;
How do you kill a MySQL query? - See the ID of it from the question above, then KILL id. You can separate multiple IDs by space.
I need to find out how many client connections were aborted by MySQL server. - It’s displayed in SHOW STATUS query, alternatively accessible via mysqladmin extended-status.
What does SET SQL_AUTO_IS_NULL =1 do? - you can find the last inserted row for a table that contains an AUTO_INCREMENT column by issuing WHERE auto_increment_column IS NULL