The extension of symbol files is .pdb (at least when produced by the Visual C++ compiler or linker).
Creation of PDB files
In order to generate PDB files, cl needs to be invoked with either the /Zi or /ZIoption and the linker with the /DEBUG option.
The PDB is created in the same directory as the created executable or dll.
The DLL that is used by a compiler or linked to prodcue the symbol file is mspdbcore.dll.
Content of a PDB file
The content of a symbol file is not needed to run an application. It is useful however for debugging purposes.
Particularly, a PDB file contains
Public symbols (functions, static and global variables)
The object files that were used to create the executable, and their respective section
Frame pointer optimization (FPO) information
Type information (variables, structs …)
Source file name and line numbers
Each piece of information is called a symbol, hence the name symbol files.
The format of a symbol files is not documented by Microsoft. Yet, it is possible to read the contents of a PDB file with the Debug Interface Access SDK.
Update 2022-03-03: I stumbled upon the microsoft-pdb github repository which contains information from Microsoft about the PDB (Program Database) Symbol File format. The repository's README.md is worth reading.
Symbol server
A symbol server allows a debugger to find the correct symbol files without knowing product names, build numbers or package names.
On the command line, symbols can be queried from an executable (that has a symbol file) with dbh.exe.
Misc
These PDB files have nothing to do with Oracle's plugable databases which are also abbreviated with PDB.
TODO
Symbol files have fully qualified path references to the source files. If the source files are moved to different location, the .srcpath command of WinDbg needs to be used to specify the new location.
The WinDbg command .sympath seems to specify the location for symbol files.
See also
The /pdb and /pdbstripped linker option. (Apparently, the /DEBUG flag is essential for the linker to produce a PDB file.
The Fd compiler option names the pdb file for object files.