Source language: Translate to:

Remote Access Database ?

Questions about our Advanced Database plug-in

Moderator: Neosoft Support

Remote Access Database ?

Postby David de Argentina » Wed Jun 13, 2007 3:46 am

Hi guys,

At Connection String (Advanced), Try the following sample:

Provider=MS Remote;
Remote Server=http:///ccc.domaindlx.com;
Remote Driver={Microsoft Access Driver (*.mdb)};
Remote Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=http://ccc.domaindlx.com/aplicaciones/AISA/database/Base.mdb

Then, click Test Connection Button. you get "Connection Successful"

if you try to fetch tablenames, you get the following error message:

"Actual Provider doesnt allow schema recordset"

I think we are bad... but fast...

Any ideas...?

David de Argentina
User avatar
David de Argentina
 
Posts: 1553
Joined: Mon Apr 04, 2005 4:13 pm
Location: Buenos Aires, Argentina

Re: Remote Access Database ?

Postby dpayer » Wed Jun 13, 2007 6:24 am

David de Argentina wrote:Hi guys,

At Connection String (Advanced), Try the following sample:

Provider=MS Remote;
Remote Server=http:///ccc.domaindlx.com;
Remote Driver={Microsoft Access Driver (*.mdb)};
Remote Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=http://ccc.domaindlx.com/aplicaciones/AISA/database/Base.mdb

Then, click Test Connection Button. you get "Connection Successful"

if you try to fetch tablenames, you get the following error message:

"Actual Provider doesnt allow schema recordset"

I think we are bad... but fast...

Any ideas...?

David de Argentina


Dave has to clarify this if this new plugin should be able to access remote databases but I have never made ODBC connections on a remote server, I have always made them on a local server. You then access the data with a local application (asp / php, etc). I never expected to be able to open an access database remotely using NB's data plugin. I believe the MS Data components - the tool through which NBs data plugin acts, if I am not mistaken - provide a mechanism to interact with an Access/ MSSQL database on the server from a process that is local to the server. The way around this may be to have a system DSN established on the server that points to that specific database and is available to anyone on the server (with proper credentials). But even on my machine when I create a system DSN it states:
An ODBC System data source stores information about how to connect to the indicated data provider. A System data source is visible to all users on this machine, including NT services. (emphasis is mine)


Dave indicated to me that he was using primarily DSNless connections when he did access. I assumed that was only to local databases.

Correct me if I am wrong Dave but the DSNless process may be accessed remotely (with CGI process or ISAPI process of ASP/PHP/Perl, etc) but not not interacted with directly from a remote location via ODBC, unless the ODBC driver allows it (like MySQLs).

MySQL and MS SQL do have the means to interact via named pipes or specific TCP/IP connections through specific ports. I do not see that the NB application has the means to interact with those databases in this manner.

One can still access the MySQL or MSSQL 'as if' it were local by establishing a SSH connection which is then equivalent to a VPN to the server machine. At that point you could talk to the database server on your own localhost and the VPN/SSH connection connects you as if you were local.

Another point (moot at this point). In the example you show, you use http:///ccc.domaindlx.com as a remote server. When a host name is requested, normally you do not include a protocol with the host, simply the address.

David P.
User avatar
dpayer
 
Posts: 1380
Joined: Mon Apr 11, 2005 5:55 am
Location: Iowa - USA

Re: Remote Access Database ?

Postby dpayer » Wed Jun 13, 2007 7:55 am

Here are some comments by certified Microsoft guys that seem to verify what I have stated:

http://groups.google.com/group/microsof ... a8ff9fdc24

D
User avatar
dpayer
 
Posts: 1380
Joined: Mon Apr 11, 2005 5:55 am
Location: Iowa - USA

Postby Neosoft Support » Wed Jun 13, 2007 11:50 am

The details of accessing a remote database are still being sorted out. In theory, it should work. The problem is that for security reasons most web servers seem to prohibit access to the database from applications that are not also running on the server. You can connect, but the server won't allow you to retrieve any data. This makes testing very difficult. Of course, the security is there for a reason as David points out.

Something else to consider is a technology called RDS (Remote Data Services). This is part of ADO which NeoBookDBPro already utilizes.
NeoSoft Support
Neosoft Support
NeoSoft Team
 
Posts: 5593
Joined: Thu Mar 31, 2005 10:48 pm
Location: Oregon, USA

Postby dpayer » Wed Jun 13, 2007 1:13 pm

Neosoft Support wrote:Something else to consider is a technology called RDS (Remote Data Services). This is part of ADO which NeoBookDBPro already utilizes.


I did a check on Remote Data Services and the following MS Knowledgebase is relevant.

http://support.microsoft.com/default.aspx/kb/251122

To configure RDS, it appears you need Administrative access to the IIS MMC so you can configure a virtual directory pointing to common files of Microsoft.

I attempted to follow the directions and couldn't seem to use the wizards to create a proper connection string.

D

D
User avatar
dpayer
 
Posts: 1380
Joined: Mon Apr 11, 2005 5:55 am
Location: Iowa - USA

Postby edunaway » Mon Jun 18, 2007 8:25 am

What about a simple PHP script which could be used to manipulate the database over a SSL connection? This would satisfy the web server's requirements for local access as well as preventing one from having to hardcode the mySQL user name and password in the Neobook pub. The SSL, along with authentication in the script, could provide additional security for the database itself.

Since its sole purpose would be to allow Neobook to manage the database remotely the script would not need any kind of interface.

-eric
edunaway
 
Posts: 88
Joined: Wed May 04, 2005 9:17 am

Postby dpayer » Mon Jun 18, 2007 9:08 am

edunaway wrote:What about a simple PHP script which could be used to manipulate the database over a SSL connection? This would satisfy the web server's requirements for local access as well as preventing one from having to hardcode the mySQL user name and password in the Neobook pub. The SSL, along with authentication in the script, could provide additional security for the database itself.

Since its sole purpose would be to allow Neobook to manage the database remotely the script would not need any kind of interface.

-eric


I have sent this suggestion directly to Dave @ NB as well. Upon consideration, I think it is not simple to just include that functionality on the surface. Here are the issues:

1) you are opening a remote database and getting data. Which data will you then maniupulate? Do you store a copy of it locally? Which db format do you use?
2) if you copy data from the server and manipulate it, you must then update the server's data. What if you have a momentary glitch in an update/internet connection what happens to the integrity of the data?

So I think these issues could be overcome with a consistent methodology.

In fact, a web database functionality could be developed as a separate database plugin and used in conjunction with the existing dbpro plugin.

Dave may decide to include this in the future but as I consider this, it could have a life of its own, apart from the existing plugin.

I do think working remotely with MySQL databases will be easier to do than dealing with Access databases as MySQL's ODBC driver can be put on the clients machine and used to access a remote database (if you have the right username@hostname on the database).

The same is not as easy with Access it appears.

David P
User avatar
dpayer
 
Posts: 1380
Joined: Mon Apr 11, 2005 5:55 am
Location: Iowa - USA

Postby Neosoft Support » Mon Jun 18, 2007 11:02 am

Does anyone have the ability to configure a MySQL or Access database with the proper security for testing? I think the current plug-in will work, but standard hosted databases don't allow external access. We need a db configured to allow this.
NeoSoft Support
Neosoft Support
NeoSoft Team
 
Posts: 5593
Joined: Thu Mar 31, 2005 10:48 pm
Location: Oregon, USA

Postby edunaway » Mon Jun 18, 2007 11:29 am

I can provide this.

I have created a MySQL database on a server with SSL. Please contact me by email to obtain the access information. Please feel free to test as much as you need; it is not on a production server.

-eric
edunaway
 
Posts: 88
Joined: Wed May 04, 2005 9:17 am

Postby David de Argentina » Mon Jun 18, 2007 12:06 pm

Hi Dave,

I had tested my NeoMySQL plugin with Impulsmedia (another user) hosted database.
Login data are:

Server: 195.37.181.195
user: 206ipublic
Database: 206ipublic
pass: EhU3fyc+
Port: 3306
Tables: Clients or neobookers

and all works fine.

Greetings from Buenos Aires,
David de Argentina
User avatar
David de Argentina
 
Posts: 1553
Joined: Mon Apr 04, 2005 4:13 pm
Location: Buenos Aires, Argentina

Postby Neosoft Support » Mon Jun 18, 2007 6:20 pm

Thanks David!

Your database works great with DBPro. I used the following action:

Code: Select all
dbpOpenDatabase "Test" "Provider=MSDASQL.1;
Driver={MySQL ODBC 3.51 Driver};Server=195.37.181.195;Port=3306;Database=206ipublic;
User=206ipublic;Password=EhU3fyc+;Option=3"


We've had trouble accessing other remote databases because of security restrictions. Can you tell us how your database is configured?
NeoSoft Support
Neosoft Support
NeoSoft Team
 
Posts: 5593
Joined: Thu Mar 31, 2005 10:48 pm
Location: Oregon, USA

Postby David de Argentina » Mon Jun 18, 2007 8:26 pm

You Wellcome, Dave,

Usually, host providers blocks MySQL ports (3306 and 3307) and none external aplication can connect with database.

I think there are a good idea check each neobooker check it with their host provider if external connection using this ports are available...

If any provider allows this feature, please, tell us the url of these provider.

Greetings from Buenos Aires,
David de Argentina
User avatar
David de Argentina
 
Posts: 1553
Joined: Mon Apr 04, 2005 4:13 pm
Location: Buenos Aires, Argentina

Postby Neosoft Support » Tue Jun 19, 2007 9:56 am

Usually, host providers blocks MySQL ports (3306 and 3307) and none external aplication can connect with database.


OK, that makes sense.
NeoSoft Support
Neosoft Support
NeoSoft Team
 
Posts: 5593
Joined: Thu Mar 31, 2005 10:48 pm
Location: Oregon, USA

Postby smartmedia » Wed Jun 20, 2007 2:27 pm

Hi...

In my server is installed the cPanel version 11.4.18-RELEASE-14158
In site management tools there is an option called MySQL databases over there you
can create-edit-delete databases and also create-delete-grant rights to users, also there is an option Access Hosts.
Access Hosts grants the access of every ip is on the list, Host (% wildcard is allowed).
For example if you want to grant access for everybody you just enter %.%.%.%
Now i can connect easy from dbp with the following example...

Code: Select all
dbpOpenDatabase "Test" "Provider=MSDASQL.1;Driver={MySQL ODBC 3.51 Driver};
Server=www.infogate.gr;Database=sm_test;User=sm_test;Password=test;Option=3"


Hope i help.
User avatar
smartmedia
 
Posts: 889
Joined: Fri Apr 01, 2005 6:50 am
Location: Hellas

Postby David de Argentina » Wed Jun 20, 2007 5:44 pm

Thanks a lot SmartMedia !!!!!

you had answered my question for a long time...!!!

Now, i can connect with my databases !!!

greetings from Buenos Aires,
David de Argentina
User avatar
David de Argentina
 
Posts: 1553
Joined: Mon Apr 04, 2005 4:13 pm
Location: Buenos Aires, Argentina

Next

Return to NeoBookDBPro

Who is online

Users browsing this forum: No registered users and 3 guests