Welcome to Geeklog Sunday, September 15 2019 @ 10:04 pm EDT

Geeklog Forums

Can't select MS SQL during install


Status: offline

gbarnas

Forum User
Newbie
Registered: 09/09/10
Posts: 4
Location:NYC Metro Area, USA
Greetings,

I'm new to GL and working through the install. Here's the environment:
Web Server: Windows 2008 r2 (x64), w/ IIS 7. This host has 5 IPs (1 for host and 4 for web site instances) and has our primary web site running on it. PHP 5.2.9 is installed and runs our web-mail interface on the primary site. GL 1.7 is installed as a dedicated instance on the second IP address in a /blog subfolder. Disk structure is
E:\Websites\Site2\web - just an index.htm with a redirect to the blog/index.php (for now)
E:\Websites\Site2\Web\Blog - Contents of the GL Public_Html folder
E:\WebSites\Site2 - all other GL folders and files
Basically, a very simple install. I did try the install with all of the Public files in the Web (root) folder, but it did not make a difference.

SQL Server: Windows 2008 r2 (x64) w/ SQL Express 2008 x64. SQL is installed as the default instance, not named instance. SQL Browser service is not running. Both systems are in a perimeter segment, with the web sites published to the Internet via Windows TMG 2010.

Currently, there is one web and one SQL server, but plans for Q1-11 are for a clustered SQL server and 3 load-balanced web servers.

I'm working from a management workstation in the DMZ itself for testing & installation, so everything is in the same subnet. It took a while of generic HTTP 500 errors and no event or application logs and much forum searching to get this far after finally altering the permissions on the webroot/Blog folder.

I can now get to setup Step 2, where it will only allow me to select one of the two MySQL options. MSSQL is in the list but greyed out. I temporarily enabled the SQL Browser service on the SQL server but it did not help. Web applications on the other site can access two databases on the same SQL server without any issue, so communication between the servers is not an issue,

Is there some way to override this and allow me to select the SQL server? Due to our security regs and expansion plans, I cannot install SQL on the web server itself.

Thanks,

Glenn

Status: offline

Dirk

Site Admin
Admin
Registered: 12/01/02
Posts: 13073
Location:Stuttgart, Germany
Quote by: gbarnas

I can now get to setup Step 2, where it will only allow me to select one of the two MySQL options. MSSQL is in the list but greyed out.


Geeklog checks if the mssql_* functions are available, e.g. mssql_connect. Looks like your PHP install is missing them.

Do a phpinfo() (there's an info.php in Geeklog's install directory) and see if you can find any mention of MS SQL support there.

bye, Dirk

Status: offline

gbarnas

Forum User
Newbie
Registered: 09/09/10
Posts: 4
Location:NYC Metro Area, USA
Thanks for the quick response - has me heading in the right direction now. Smile

Have the dreaded "missing ntwdblib.dll" message now. At least there's lots of info on resolving that. I'll post back if I need further help, and will post an outline of the procedure that I followed to get SQL working.

Thanks,

Glenn

Status: offline

randy

Forum User
Newbie
Registered: 18/01/03
Posts: 11
Quote by: gbarnas

Thanks for the quick response - has me heading in the right direction now. Smile

Have the dreaded "missing ntwdblib.dll" message now. At least there's lots of info on resolving that. I'll post back if I need further help, and will post an outline of the procedure that I followed to get SQL working.

Thanks,

Glenn




Yup -- that is a known and annoying issue with PHP and SQL Server support.

Status: offline

gbarnas

Forum User
Newbie
Registered: 09/09/10
Posts: 4
Location:NYC Metro Area, USA
OK - my head is pounding and I'm thinking about drinking my dinner, having spent most of my Sunday at the office... Not a GL issue but simply a lack of good documentation on how to configure PHP and MS SQL.

I found that use of NTwdblib.dll has been depracated for years now.. MS has released a new PHP/SQL driver (1.1), so I downloaded that. Upgraded PHP to 5.3.3 and verified that the other PHP-based site still works. Placed the php_sqlsrv_53_nts_vc9.dll file from the MS driver set into the \PHP\INC folder and added
extension=php_sqlsrv_53_nts_vc9.dll
to the php.ini file. I made sure that the SQL native client is installed on the web server. Read something about FreeTDS, but have conflicting documents - one says its required and another says it isn't. Right now, running phpinfo() doesn't show anything related to SQL. I downloaded and configured this anyway, but to no avail.

I even went so far as to install MySQL onto the SQL server (after taking a SAN snapshot) and configuring a GeekLog database and user account with ALL PRIVELEGES rights, but then get an "invalid database configuration" error, so reverted the snapshot. The one thing I cannot do is install the database software on the web server, since the DB must be shared between multiple servers.

If anyone can provide some authoritative infomation on getting this to work, I'd be very grateful.

Thanks,

Glenn

Status: offline

randy

Forum User
Newbie
Registered: 18/01/03
Posts: 11
I believe that the latest MSSQL driver from Microsoft is a PHP PDO library. Geeklog is not using PDO. You'll have to go back to the original way of finding a compatible ntwdblib.dll file and enabling mssql server support in php.

I just installed an SQL server instance on Friday and it worked just fine on PHP 5.2.x with an ntwdblib.dll file NOT from the sql server installation folders. None of these issues have changed since I wrote the MSSQL port for Geeklog. Which is a shame.

If you google "ntwdblib.dll download", the first hit should be a good place to start to get a functional dll file.

Disclaimer: I, in no way am suggesting that what you download from the internet is safe! Use it at your own risk (but it does work ;-) )

Status: offline

gbarnas

Forum User
Newbie
Registered: 09/09/10
Posts: 4
Location:NYC Metro Area, USA
tanksh.. I'll gib dat a try when I schober up... Big Grin

I've switched back to our prior blog app for the moment. Not as feature rich, but it was running in 10 minutes. This is going to take more effort than I imagined, so we'll allocate some proper dev time and resources to it.

I recognize that Open Source software is often built using other open source utilities (ie: MySQL), but if the GL dev team plans on "supporting" MSSQL as one of their SQL platforms (it was one of the reasons we considered the product, as most of our clients won't use anything besides MSSQL or Oracle), then the complete setup process and prerequisites need to be outlined. This isn't a "complaint" but simply constructive criticism. I've used other Open products that clearly defined the requirements in just a paragraph or two and it saved a few of the hairs that remain on my head.

I'll put my money where my mouth is.. when we set up GL, I'll document and post the procedure so it can be added to the FAQ or install documents.

I grabbed the ntwdblib from the site you referenced - thanks. I'll give that a whirl.

Regards,

Glenn

Status: offline

Dirk

Site Admin
Admin
Registered: 12/01/02
Posts: 13073
Location:Stuttgart, Germany
Quote by: gbarnas

I'll put my money where my mouth is.. when we set up GL, I'll document and post the procedure so it can be added to the FAQ or install documents.


That would be very much appreciated, thanks. We also have a wiki if you prefer that.

bye, Dirk

All times are EDT. The time is now 10:04 pm.

  • Normal Topic
  • Sticky Topic
  • Locked Topic
  • New Post
  • Sticky Topic W/ New Post
  • Locked Topic W/ New Post
  •  View Anonymous Posts
  •  Able to post
  •  Filtered HTML Allowed
  •  Censored Content