I have neo4j installed (& the conf file says that authentication is off.)
I start the movie demo --- and am told to connect to the server.
When I type
:server connect
with No Authentication
the browser tells me that there is a graph waiting for me but then gives the message "Unable to extract host form undefined."
If you simply want to run the movie demo, you might prefer to use the free Neo4j sandbox rather than Neo4j Desktop. It runs in a web browser and there is nothing to install.
https://sandbox.neo4j.com/
If you prefer to use Neo4j Desktop, confirm that your database has started.
https://www.markhneedham.com/blog/2018/03/20/neo4j-undefined-unable-to-extract-host-from-undefined/
I want to create a dump of the database that JQAssistant creates with a scan. So far i have tried to do this with the integrated server and by connecting jqassistant to a running database.
The problem with the integrated database is that i can't access a shell and therefore i don't know how i could create the dump.
Connecting to the running database also didn't work. I assume the problem here is the encryption, my server is running local and trying to connect to it with
jqassistant.sh scan -f my-project.jar -storeUri bolt://localhost:7687 -storeUsername neo4j -storePassword secret
which is the example from the jqa tutorial throws the error:
javax.net.ssl.SSLHandshakeException: General SSLEngine problem
so i assume i can't connect without ssl encryption.
I am using Neo4j server 3.5.15 and JQAssistant Commandline Tool version 1.9 which uses an integrated Neo4j 3.5.14 server.
If you can give me an new idea how to create a data dump out of the scan or how to fix one of the two given problems i would appreciate that a lot!
Thanks in advance!
I couldn't figure out a way to export the database with the commandline tool, but with the maven plugin. If you setup a maven project and include jqassistant as a plugin it offers you the option "export-database" which creates a Cypher script.
I installed Neo4j 3.2.6 on Ubuntu 16.04 and I tried to access it remotely using putty (from my windows-based computers). Without uncommenting anything in neo4j.conf, I can access Neo4j using the source port I defined in putty. Then, after connecting with the initial password "Neo4j" in the section saying "Connect to Neo4j Database access requires an authenticated connection.", I gets the famous error "ServiceUnavailable: WebSocket connection failure. Due to security constraints in your web browser, the reason for the failure is not available to this Neo4j Driver. Please use your browsers development console to determine ...".
So, after googling, I uncommented:
dbms.connectors.default_listen_address=0.0.0.0
dbms.connector.bolt.listen_address=:7687
BUT NOTHING WORKS.
The interesting thing is that I tried to install Neo4j on my laptop (locally) and it worked and when I used its "bolt://..." database access password on my remote access "bolt://..." database access it works.So, I'm not sure what is going on here, can someone help?
I use <neo4j:config storeDirectory="/neo4j/target/data/db"> to config my neo4j database path,
and when tomcat started, the database files are locked by tomcat, and I can't start it using Neo4j official start tool, so how can I access my database in broswer like localhost:7474, or can spring connect a lunched neo4j server like mysql? and then I can access it through broswer.
You can work with one graph instance from one place only. If you are using it via tomcat in your code you wont be able to start it from the community tool. You would need to stop your tomcat and then run the tool to view it in the browser.
Is it feasible to have a Ruby on Rails app, which is:
a) deployed on Heroku, and
b) working with a remote SQL Server database?
I take it that I'll need unixODBC installed on Heroku, but I cannot find a way to do so. Is this possible?
Or, is there any other way (without ODBC?) to accomplish this?
Thank you very much for any guidance or tip.
Updated:
Some info on the subject:
1) Heroku pre-installs both unixODBC and FreeTDS by default, so you already have them.
2) Also, it is possible to run shell commands via Heroku Console in backticks, e.g.:
heroku console
`odbcinst`
(runs "odbcinst" command in Heroku shell and shows the result)
3) You do not have access to filesystem outside of your slice where the packages are installed. If you only need a driver path, Heroku support can provide it (/usr/lib/odbc/libtdsodbc.so in my case).
4) You cannot run sudo commands in Heroku shell.
At the moment, to connect to MS SQL Server you at least need to append ‘freetds.conf’ file. Even when using tinyTDS (there is an open ticket#2 in tinyTDS gitgub issue page). DSN-less connection instructions from "wiki.rubyonrails.org SLASH database-support SLASH ms-sql" didn’t work for me, I guess this connection requires some extra-configuration either.
‘freetds.conf’ cannot be modified without sudo. Therefore, I conclude that currently there is no way to make MS SQL and Heroku work together.
I’ve managed to set up this connection with EngineYard and activerecord-sqlserver-adapter.
I followed these instructions:
https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/wiki/Platform-Installation---Ubuntu
(there are only some filepath differences, e.g. ‘odbc.ini’ is located in ‘/etc/unicodbc’, not in ‘/etc’ - this is easy to work out).
I installed 'unixODBC' and 'freetds' packages using EY Unix Packages feature, and made all configurations manually through SSH. Sudo is available in EY (no password required). There is also Chef Recepes feature to automate those configurations (seems to be pretty easy, I'm going to try it tomorrow).
Hope this is helpful.
It is possible.
Because Heroku copies/symlinks its own config/database.yml over whatever you supply in your repository, you may need to take additional steps (e.g. in config/environments/production.rb or in config/initializers/remote_mssql_from_heroku.rb) to set up your application appropriately.
You will face the challenge, however, that traffic from Heroku to your MSSQL database will traverse the public internet. By default, this traffic will not be encrypted. Potentially everyone in the world will be able to monitor your traffic between your Heroku application and your database, and even alter the traffic in-flight, whether for benign or malicious purpose, without you being able to detect it. MS SQL offers the capability to connect over SSL. This capability requires explicit configuration in the MSSQL server, so you must be able to access and modify that configuration. Additionally, this configuration requires that your client library be up-to-date and capable of talking with MSSQL over SSL. Note that MSSQL server will enforce that your server certificate list a Common Name or Subject Alternative Name exactly matching or wildcard-matching the server's FQDN (at least, the FQDN that the server knows about), and that the client use an FQDN for the server exactly matching or wildcard-matching one of the names on the certificate.
I've successfully used the following article which uses Heroku's newer buildpack feature to use TinyTDS and connect remotely to SQL Server 2008 R2. I'm still investigating how I could encrypt traffic. Hope this helps others!
http://blog.firmhouse.com/connecting-to-sql-server-from-heroku-with-freetds-here-is-how-on-cedar#
We're having a similar problem where we're needing to import old data from a SQL Server database into our new app. The data isn't a straight table import, but needs to undergo some processing and conversions. We've built an import layer for this which lives in a private gem, so as to not pollute the new app with the old data conversion issues. This approach is also designed to permit incremental updates, as we get closer to launch we'll keep syncing records up to the moment of switch-over.
Heroku told us that it's not trivial to connect to SQLServer, in particular as they don't support FreeTDS. Their support staff recommended to run an instance with the import gem from a laptop in our office and configure it to connect to their database (which requires a dedicated DB, not the free shared one). This sounded like the most palatable approach to us.
Secondly, regarding security that was mentioned by #Justice, we discussed configuring SSL for SQLServer with the hosting company and they pointed out the complexities of this. They recommended VPN as an easier solution. As we don't have office-side VPN hardware, the simplest and free solution proved to be an SSH tunnel.
We've set up an SSH tunnel from the laptop to the SQLServer Windows box. That was straightforward. We had CopSSH installed on Windows (which comes with a Linux shell, by the way) and we were able to simply set up a tunnel, having the laptop talk to localhost for its SQLServer connection, i.e.:
ssh -L 1433:localhost:1433 user#windows_server_name
I did not know Heroku has FreeTDS on it? I was told they did not. TinyTDS if used with FreeTDS 0.91 can have a zero freetds.conf dependency and be driving by runtime connection args. We are looking into building an Ubuntu 10.4 native gem that statically links 0.91 with OpenSSL so you can just drop it into Heroku and us it to connect to Azure and/or you own outside DB.