PDA

View Full Version : Which Server Operating System Setup?



Erin Salmon
16-11-2003, 10:08 AM
Hi,

I've a number of websites which have outgrown using MS Access, and are starting to fall over a bit under the strain of too many connections...

The solution is obviously to use MS SQL Server, but this raises a lot of questions... I can have the website hosted elsewhere on servers which have SQL Server running, but I would need to develop the sites and databases locally. Is it possible to do this on a workstation using Developer Edition?

The better option, which gives me a lot more flexibility is to get a development server. I understand that MS SBS has SQL server with it, and I could use this. However, should I want to then turn the server loose on the web to host sites, would the software (SBS, or SQL Server) limit its use in this way? Is there a limit to the number of connections, or a maximum user limit? What about the software performance?

If so, is my only option for such a server to use something like Windows Server 2003, with SQL Server Standard Edition (At something like $12,000...)?

Thanks in advance!

Erin

agent
16-11-2003, 10:24 AM
I would think, that if MS SQL Server Developer Edition runs as a server and has unlimited connections (it'll most likely be mentioned in the Licence Agreement upon installation if there are client limitations), then it would be best to use (because it's free, isn't it?

Else you could find out if there is a MySQL to MSSQL converter (there's a MSSQL to MySQL converter), and use MySQL to develop your databases and convert them over.

However, should not your host have some sort of control panel to set up databases?

Oh, and do you currently have a host, or are you hosting yourself?

Dolby Digital
16-11-2003, 10:45 AM
On the mySQL theme, would it be better just to use mySQL exclusively which reduces your licence costs but means a conversion project and hosting review.

Another option could be to use MSDE for a development server.

Erin Salmon
16-11-2003, 10:45 AM
Hi,

I do have a host at present, but if I'm going to set up a reasonably decent rig here to develop sites, I may as well host a few too - in which case, the software I end up chosing should be able to do that.

The host I have at the moment costs for hosting the site (pretty reasonable rates), but the cost of an MS-SQL Database is $1/MB/month.

I have a site in development at present (still a good 6 months from completion), which will likely have a database starting somewhere around 100MB, and growing well past 1GB over a year or so. To be paying something like $1200/month for hosting would make me think I could do it a LOT cheaper by setting up my own system.

I have ample hardware already at my disposal to run a server, complete with backup systems and redundant power backup - but I need to get a grasp on what sort of software package to run on it.

I need IIS 5.0 and MS-SQL Server 2000. Ideally, I want to run it on the internet as a web server, but in the meantime it would be a development server.

Thanks,

Erin

agent
16-11-2003, 11:38 AM
If MSDE can be used as an internet database server, then by all means go for it (and can someone please tell me if it's free, because I've got a copy of it on CD, which mentions nothing about it being a trial version - and another app on the CD says "trial", so I would assume it's not).

Just out of interest, if your hosting company supports ASP, could you tell me who they are?

stu140103
16-11-2003, 11:54 AM
> Just out of interest, if your hosting company
> supports ASP, could you tell me who they are?


2day supports ASP ( 2day.co.nz)

Erin Salmon
16-11-2003, 12:10 PM
2day.com rather - I host with them at present. ASP and ASP.NET are reasonablty priced (for NZ), but MS-SQL is a rip-off...

:)

Erin

Erin Salmon
16-11-2003, 12:24 PM
Looks like this may answer my question:

http://www.microsoft.com/sql/techinfo/planning/ChoosEd.doc

Quote: "SQL Server 2000 Enterprise Edition and SQL Server 2000 Standard Edition are the only editions of SQL Server 2000 that can be installed and used in live (deployed) server environments. "

SQL Server 2000 Standard and Enterprise Editions may only operate on a Server Operating System.

With $10k down for SQL Server Standard, and $5k for the hardware and Server OS, it looks like I might do best to stick to a Development Edition for the moment.

Still, one year of hosting with 2day.com would pay for both the hardware and software for that setup. Amazing how fast these things pay off...

:P

Erin

Graham L
16-11-2003, 01:22 PM
... mySQL, and Apache ... ;-)

Erin Salmon
16-11-2003, 01:39 PM
With ASP? ;)

Graham L
16-11-2003, 02:12 PM
Well, actually, yes. :D

"apache ASP" to Google will find you the software. Looks as if there are enough smart people who don't like kilodollar pacakages, and are competent to do something about it.

Erin Salmon
16-11-2003, 02:33 PM
Yeah, there's Chillisoft, and I think one other, but they don't support about half of the language. I've tried using Chillisoft for example, but a lot of things are missing. From memory, it does do CDONTS, and there were some recordset commands it wasn't allowing.

Not really worth the hassle. I think if you want to go ASP, you've got to go Microsoft.

PHP can stay with Linux, ASP can stay with M$.

:)

Erin

Erin Salmon
16-11-2003, 02:39 PM
Another thing...

I've been browsing around to get a feel for what the various options cost - and I've discovered that Microsoft Small Business Server 2000 has SQL Server 2000 with it. However, I've been unable to find out anywhere which version of SQL Server it is.

The only editions you can run in a live environment are SQL Server Standard or Enterprise Editions. Developer Edition allows you to use absolutely everything, but you can't make it live.

Therefore, if SBS has SQL Server Standard with it (probably not), it would be an option.

However, can someone explain the business with CALs to me - if you are running a webserver, what is the relevance of CALs? Do you need one CAL per connection, or one CAL per device the server communicates with, or one CAL per admin logged in to the server?

Thanks,

Erin

Graham L
16-11-2003, 02:58 PM
Chillisoft? A commercial thing?

Apache::ASP is what you'll find from that google search. ;-) It'sa Perl based ASP implementation. I would say it's going to be a very actively developed/improved Open Source product.

Dolby Digital
16-11-2003, 03:46 PM
>>PHP can stay with Linux, ASP can stay with M$.
I have used ASP with mySQL and it worked fine (using OBDC). I have also setup PHP to work with IIS 5.0 and again it worked fine for me.
At the end of the day, it is your choice.

Erin Salmon
16-11-2003, 04:18 PM
Hi,

Dolby, can you run past me how you set up ASP and mySQL? Under windows, or using Apache ASP?

Where can you get the necessary software from?

Cheers,

Erin

agent
16-11-2003, 04:32 PM
www.mysql.com

There should be documentation there that details installation on Windows.

Then it's just a matter of learning how to access MySQL dbases using ASP.

-=JM=-
16-11-2003, 06:04 PM
Apache, PHP, MySQL (possibly PostgreSQL). They'll run fine under win32 as well if that is what you want.

Erin Salmon
16-11-2003, 09:05 PM
Hi,

agent - have set up mySQL with ASP as you described, and have created a DSN-less connection to it from an ASP website already known to be working correctly in all regards. So far all works fine, except that when I try to take two values out of the database (both are Decimal 10,0) and multiply those values, I get:

Error Type:
Microsoft VBScript runtime (0x800A000D)
Type mismatch
/u3/parts/Products.asp, line 118

Any ideas?

Cheers,

Erin

Kame
17-11-2003, 10:52 AM
Erin,

You should put a checking procedure in your script to determine if the values out of your database are being returned as NULL.

If it's returning NULL, that's usually when that error message shows, you should know what to do, basically just make sure the data returned isn't NULL, usually setting it to "" would do.

Erin Salmon
17-11-2003, 01:16 PM
Hi,

If I print ( response.write ) the numbers being multiplied, they all have a numerical value. None of the variables are empty, if that's what you mean.

Is this what you mean?

Cheers,

Erin

martnz
17-11-2003, 03:37 PM
Microsoft...
******************
Erin - can't comment on suitability for your app, but suspect Server hardware AND SBS "Premium" together should be available for well under NZ$5K. SBS Premium has SQL 2000 and ISA 2000. Licensing is not always straightforward - this may help.

CALs are per-device (also a per-user option) for client connection direct to a server app - not relevant to your situation.

Another option is an "External Connector Licence" for the server. This might be required if the server authenticates users who access SQL based data. Bit of a grey area - to be certain, suggest asking MS directly.

Finally, you may not need a licence for users to access the server. See text (and link to MS) below.

http://www.microsoft.com/windowsserver2003/howtobuy/licensing/licensefaq.mspx
Q. Why do I need an External Connector license?
A. An External Connector (EC) license is not mandatory. It is a licensing option available to address a specific customer scenario. When you need to allow your business partners or customers to access your network, you have two choices:
1/ You can purchase Windows CALs for each one of your external users; or,
2/ You can purchase External Connector licenses for each copy of the Windows Server 2003 software that those external users will access.
Note: An example of an external user is a person who is not an employee, or similar personnel of the company or its affiliates. Access via the Internet, in an unauthenticated fashion, does not require a Windows CAL or an EC license-(for example, browsing a public Web site).

Regards, Martnz

agent
17-11-2003, 03:44 PM
I'm killing myself for even suggesting this, but are you multiplying using the asterisk (*)?

Erin Salmon
17-11-2003, 04:10 PM
I didn't know there was anything else you could multiply with...

Erin Salmon
17-11-2003, 04:13 PM
Hi,

Another thing. I can't multiply one of these values by an ordinary number either, such as:

ProductPrice = tbProducts("Price") * 1.5

Same error. Are you kidding about the *, or is there something else you can multiply with?

Cheers,

Erin

agent
17-11-2003, 04:25 PM
I was being a little stupid... in case you absent mindedly tried multiplying with an "x" (fat chance).

It might help to specify the database content as numbers (like how you can do that in Access), unless it already is (probably), because I'd think it would have trouble multiplying what it thinks to be text (only containing numbers) by numbers or more text.

Graham L
17-11-2003, 04:43 PM
I thought that too ... a database item which can be printed and appears as a number might not be "multipliable". A text string containing a number is not the same as an numeric value. There will, of course, be functions to convert strings to numbers and numbers to strings. :D

Erin Salmon
17-11-2003, 04:52 PM
Hi,

All the database fields in question are numeric - there are two which are decimal(6,3), and one which is decimal(6,2).

The fields are numeric, the contents are numeric, and response.write returns numeric values for each one.

Works fine for EXACTLY the same database with Access... Is mySQL perhaps pulling something nasty with Binary or Hexadecimal values here?

Any other ideas?

Cheers,

Erin

Graham L
17-11-2003, 05:04 PM
Looking back ... VBScript says it's "type mismatch". I would believe that ;-).

I don't think mySQL is "pulling something with binary or hexadecimal" ... all DBs (and programming languages have various formats for data storage. "Binary" formats of storage are more compact than textual fomats for numbers. I wonder whether the (6,2) ,etc, format might be a text type --- say "123456.12" (where the ".12" is the fractional part, which would be stored without the '.', like "12345612" for space saving. If so, it would need a type conversion function used before it got sent to the arithmetic.

Erin Salmon
17-11-2003, 05:37 PM
Hi,

There are two very good reasons why I think (6,2) is not a text format.

1.) A field of this type in mySQL does not allow you to type text into it; only numbers.

2.) The full name of (6,2) is Decimal(6,2).

According to the manual, (6,2) means 6 digits, followed by 2 decimal places.

Erin

agent
17-11-2003, 07:13 PM
Have you tried searching FAQs and documentation for this?