If global data is viewed as being so bad, with its potential for change anywhere in the system – then isn’t the database due the same complaint?
The database being just a big persistent global data store right?
A database is just global data if you have global database accessors, which is wrong.
Technically a database is a data store to persist application data, that is, to preserve it between executions of the same code (as opposed to in-memory data). The data in the database is not meant to be accessible to every part of the code, but just to specific parts.