문제

It seems that sys catalog views can be found under every database, either built in or user created. Are they all actual view definitions created under each of the database or just "links" to somewhere? Thanks

도움이 되었습니까?

해결책

Catalog views do not provide access to replication, SQL Server Agent, or backup metadata. Those are available in MSDB only.

Reference:

https://docs.microsoft.com/en-us/sql/relational-databases/databases/resource-database

https://technet.microsoft.com/en-us/library/ms179503(v=sql.105).aspx

The Resource database is a read-only database that contains all the system objects that are included with SQL Server. SQL Server system objects, such as sys.objects, are physically persisted in the Resource database, but they logically appear in the sys schema of every database. The Resource database does not contain user data or user metadata.

The Resource database makes upgrading to a new version of SQL Server an easier and faster procedure. In earlier versions of SQL Server, upgrading required dropping and creating system objects. Because the Resource database file contains all system objects, an upgrade is now accomplished simply by copying the single Resource database file to the local server.

The physical file names of the Resource database are mssqlsystemresource.mdf and mssqlsystemresource.ldf. These files are located in :\Program Files\Microsoft SQL Server\MSSQL.\MSSQL\Binn\ and should not be moved. Each instance of SQL Server has one and only one associated mssqlsystemresource.mdf file, and instances do not share this file.

System base tables are the underlying tables that actually store the metadata for a specific database. The master database is special in this respect because it contains some additional tables that are not found in any of the other databases. These tables contain persisted metadata that has server-wide scope. The Resource database contains the same base table schema as any other non-master database.

다른 팁

I think of sys "views" as mysterious objects that can produce metadata on demand without telling you how. It seems to me that some of that data can't be coming from any "table" of the recognised kind. But that's my ignorance. Maybe it is tables. And yet a lot of the metadata is -about- tables, so how can it be -in- a table? It seems like this kind of paradox https://en.wikipedia.org/wiki/Bootstrapping#Etymology

And yet that page explains that computers can do this thing ;-)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 dba.stackexchange
scroll top