As the title states, if I connect to my heroku posgresql DB via pgAdmin4 I see many other databases which I am not allowed to access.
I know there must be a restrction DB field somewhere but I cant find it.
In pgAdmin4 its not in the advanced tab as stated here:
StackOverflow similar Question pgAdmin3
Actually, you can hide the rest of databases.
When you fill in all credentials and connections parameters for the serevr, in order to avoid parsing so many databases, we have to white list only those databases we care about.
Go to the Advanced tab and under db restriction copy the database name (it’s the same value as the Maintenance database field filled earlier). Remember - you have to set up this parameter BEFORE you hit "Save" as you cannot modify this field after saving.
Source: https://medium.com/#vapurrmaid/getting-started-with-heroku-postgres-and-pgadmin-run-on-part-2-90d9499ed8fb
You're probably using a Hobby-Dev or Hobby-Basic database. These used shared infrastructure. Although you can see the other (obfuscated) DB's in the list, you do not have access to them. To avoid seeing them, specify the DB name in your connection settings in pgAdmin.
Related
I recently installed Datagrip to view my Company's Postgres database, however I am currently unable to view the tables in the different schemas by clicking on the schema name:
In the image, I've clicked to open and show the ab-testing schema, however nothing appears below it. This behavior is consistent across all of the schemas in the database. I am able to use the query editor to query tables in the schemas (assuming i know the table names), yet I cannot see the names in the left-side panel. I am using datagrip 2020.2
Thanks!
I had the same problem with a MySQL database. As a test, I used the MariaDB driver instead of the MySQL driver as usual. This was intentional and not an oversight, but it was not a good idea!
The tables, views and server objects were not displayed. Although I was able to display the tables and views after activating Schema Properties -> Advanced -> "Introspect using JDBC metadata", the server objects were not displayed. Working with the displayed tables and views was not possible in the usual way.
Only when I used the MySQL driver again, everything worked correctly again. The tables, views and server objects were displayed correctly and the work with it was possible in the usual way.
As a small quintessence I would like to recommend to all who "struggle" with similar problems to check your chosen drivers. Maybe the problem is caused by choosing the wrong driver, as it was in my case.
Whick kind of message do you get when instrospecting the schema?
I had a java.io.CharConversionException caused by a not valid UTF-8 string.
If this is the case, you can add the following VM option -Ddb2.jcc.charsetDecoderEncoder=3.
I'm having an issue with a prompt in OBIEE 10g, such that it displays old database value due to the prompt query being serviced from cursor cache (presentation service). For example, if the prompt drop-down shows 1 value initially since there is 1 database row and when i delete this row from database, the prompt still shows the same database value unless i manually delete the cursor cache through analytics
Setting > Administration > Manage sessions > clear cache/cursors
Tried checking OBIEE presentation service config file instanceconfig.xml, however there is no such parameter to permanently disable this cache. I referenced the following link, OBIEE 10G/11G - Presentation Service (Query|Result|Cursor) Cache
Resetting these parameters didn't seem to have any impact on the cursor cache, these are still getting generated and are not cleared after the timeouts set. (I have restarted the OBIEE services after changing these parameters). Am I missing something here.
Would appreciate any pointers to get this done i.e. getting cursor cache cleared/disabled without manual intervention as mentioned above (through Settings > Administration).
At some point I also faced that issue. The presentation cache in OBIEE is a bit shady sometimes.
What I did is to add some dummy comparison on the query of the prompt, involving sysdate with enough precision so it makes each query different to the cache.
It's a bit shabby, but at least you don't need any manual intervention... Maybe it can help you.
Good luck!
You may see this issue if using a Presentation variable as well, rather than a Prompt built using a SQL query.
The problem may be due to shared Presentation Services Query Cache, which means
that even when the user logs out, the query cursor cache is still being shared by other users, so it does not refresh the new data after the user logs in again.
The cache file is in
ORACLE_INSTANCE/tmp/OracleBIPresentationServices/coreapplication_obipsn/obis_temp
See this document for more detail.
You can configure the Virtual Private Database option in the repository
physical database object and mark session variables as Security Sensitive in
the repository to make the query cache not shared among users. See this
documentation for more detail.
i try to use Datagrip as my primary sql server query tools, bit i meet a problem that i can not move forward.
When i setup the project data source, i have to choose a Database, otherwise it will goto the default tempdb, how i can work like sql server management studio, that i can see all database list.
i have tried both jTds and Microsoft drivers, both not works.
or can i choose multi-database? i do not want to create one data source for one database.
if i connect to mysql, it works like expected.
tks
It is possible to connect without specifying the database. Just leave this field blank. After entering other settings (host, port, user, password), go to Schemas tab in Data Source properties and select all the Databases and schemas you want to work with. Then invoke Synchronize action for this Data Source in Database tool window.
DataGrip 2016.2 EAP claims to have support for showing multiple databases. See https://blog.jetbrains.com/datagrip/ and find for "Database View". Unfortunately, as of the date I'm writing this, it doesn't seem to work at all.
Unfortunately, Andrey's suggestion did not work for me.
I'm working on a Windows application. When I give this software to the client it is necessary to give database also? I want to lock the database of SQL Server on his computer so that he can not open that database or copy or view its schema or anything by which he can access that database.
When he tries to access that, it must ask for a password. So, what is the solution for the above?
SQL Server databases cannot be password-protected - they're not just files that get opened (like dBase or SQLite)
"normal" access control is handled via permissions and users - you can define who can see what, modify what, delete what
This does not however prevent a system admin from looking at your database schema and contents; there's really no way to prevent this, a sysadmin can also just copy the .mdf file to another server and attach it there and circumvent all your "security"
if you really must hide all of this, don't deliver a database - hide the database in your own company and provide a web-service based interface to the customer who can then call those web services to do his work - then the schema and data is under your control, but also: the customer's data is no longer under his control so he might not like that.....
I have a spreadsheet located on a centrally hosted server. Each day, a view on my Oracle database exports a report to this excel. To access the document, various users across a number of locations can login and review the doc. However, for no obvious reason, a number of locations have started being requested for the server name. Most of the locations have the 3 fields filled in by default, but in the problem locations they have to enter the server name each time.
Does anyone have an idea how I can solve this? No configuration changes have been made recently, and I am fairly new to the system as a whole, and cannot come up with an explanation.
See attached screenshot for what I mean.
Thanks!
http://i.imgur.com/eymlE.jpg
I browsed to Admin Tools > Data Sources (ODBC) and created a File DSN. From here I was able to specify the following:
[ODBC]
DRIVER=Microsoft ODBC for Oracle
UID=xxxxxxxxx
PWD=***************
server=xxxx.xxx.xx
This meant creating new database queries inside excel, I could point to this as reference and connect externally. But more importantly for my issue, remote users could now access a server based excel, without being prompted for the server-name. I still don't know how they lost this functionality in the first place, but this solved my issue. :)
Turns out this doesn't work - I was opening a different version of the file. Still no sure how the connection box with excel is populated from!