Go Back   vb.org Archive > vBulletin Article Depository > Read An Article > vBulletin 3 Articles
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Tutorial: How to run vBulletin onto your PC
TECK's Avatar
TECK
Join Date: Nov 2001
Posts: 4,182

 

Canada
Show Printable Version Email this Page Subscription
TECK TECK is offline 06-04-2002, 10:00 PM

This tutorial is [high]vBulletin.org and cPublisher.com copyrighted[/high]. All rights reserved.
Please ask permission in this thread to copy the tutorial. If granted, post a link that points to this page.


This tutorial will teach you how to install Apache, PHP and MySQL binaries in win2K and winXP, in order to install vBulletin directly onto your PC. It's useful because you can run your own board on your PC, to test code hacks, updates, etc before you put them to your live board.

[high]UPDATES:[/high] To receive an email when this tutorial is updated, click here.

[high]TOOLS NEEDED[/high]
- PHP windows .zip package - 4.4MB (for more info, visit www.php.net)
- Apache Server no_ssl .msi binary - 3.2MB (for more info, visit www.apache.org)
- MySQL windows installation files - 13.3MB (for more info, visit www.mysql.com)

[high]NOTE:[/high] The have been some problems with the php4ts.dll library. If you cannot restart your Apache server, download this file and replace your current one, or download latest PHP snap.

[high]PC PREPARATION[/high]
Create a folder called Network in your local disk C: with the following 2 sub-folders:
|--[C:
|----[Network
|------[MySQL
|------[Php


[high]PHP Binary INSTALLATION[/high]
01. Extract the contents of PHP .zip file to C:\Network\Php folder.

02. Copy the 'C:\Network\Php\php.ini-dist' file to your [high]%SYSTEMROOT%[/high] directory (C:\WINDOWS for winXP; C:\WINNT for win2K).
In %SYSTEMROOT% folder, rename php.ini-dist to 'php.ini' and open it.

03. In php.ini, you will need to set the 'doc_root' to point to your web server(apache) document_root, like below:
; The root of the PHP pages, used only if nonempty.
; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root
; if you are running php as a CGI under any web server (other than IIS)
; see documentation for security issues. The alternate is to use the
; cgi.force_redirect configuration below
doc_root = "c:\network\apache2\htdocs"


04. Still in php.ini, change the 'extension_dir' setting to point to your php-install-dir, like below:
; Directory in which the loadable extensions (modules) reside.
extension_dir = "c:\network\php"


05. Still in php.ini, change the 'mail function' setting to point to your ISP, like below:
[mail function]
; For Win32 only.
SMTP = smtp.myisp.com
; For Win32 only.
sendmail_from = johndoe@myisp.com


06. Save and close the php.ini file.

07. In C:\Network\Php folder, find php4ts.dll file. Move it to the [high]%SYSTEMROOT%\system32[/high] folder.

NOTE: Make sure you MOVE that file, DO NOT copy it only.

[high]Apache Server INSTALLATION[/high]
01. Run the .msi file. Enter the value [high]localhost[/high] for 'Network Domain' and 'Server Name'.

IMPORTANT: Make sure you select a custom setup and install Apache to [high]C:\Network[/high], not to 'C:\Program Files\Apache Group'. It will create automatically the 'Apache2' folder for you. There is no need to install the documentation, it is available online.

02. Go to your Apache conf file (C:\Network\Apache2\conf\httpd.conf) and find:
#LoadModule ssl_module modules/mod_ssl.so

BELOW this, add:
LoadModule php4_module c:/network/php/sapi/php4apache2.dll

03. Still in httpd.conf, find:
AddType application/x-tar .tgz

BELOW this, add:
AddType application/x-httpd-php .php

04. Still in httpd.conf, set the files that Apache will serve if a directory is requested. Find:
DirectoryIndex index.html index.html.var

REPLACE it with:
DirectoryIndex index.php index.html index.php.var index.html.var

05. Save and close the httpd.conf file.

06. Restart Apache Server.

[high]MySQL Binary INSTALLATION[/high]
01. Extract the .zip binary to a temp folder. Run the Setup.exe file.

NOTE: Make sure you browse to [high]C:\Network\MySQL[/high] folder, when you select the install location.

02. Go to C:\Network\MySQL\bin and run the 'winmysqladmin.exe' file. The WinMySQLadmin 1.3 database manager will start.
First, it will ask you to enter a new username and password. Enter the following information:
Username: root
Password: password


Click on OK.

03. Go to Go to C:\Network\MySQL\bin\data folder and create a new folder called vbulletin. That is your database.

04. Open a CMD window and change it's location to your current MySQL /bin folder.

05. Set your Users:
\bin> mysql --user=root mysql
mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost
-> IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO monty@'%'
-> IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;
mysql> GRANT USAGE ON *.* TO dummy@localhost;


NOTE: There is no need to do all GRANT 3 statements, the first one is more then enough. The other two were presented to you so you learn mode about the GRANT/REVOKE commands.

These GRANT statements set up three new users:
monty
A full superuser who can connect to the server from anywhere, but who must use a password 'some_pass' to do so.
Note that we must issue GRANT statements for both monty@localhost and monty@'%'.
If we don't add the entry with localhost, the anonymous user entry for localhost that is created by mysql_install_db will take precedence when we connect from the local host, because it has a more specific Host field value and thus comes earlier in the user table sort order.

admin
A user who can connect from localhost without a password and who is granted the RELOAD and PROCESS administrative privileges. This allows the user to execute the mysqladmin reload, mysqladmin refresh, and mysqladmin flush-* commands, as well as mysqladmin processlist . No database-related privileges are granted.
(They can be granted later by issuing additional GRANT statements.)

dummy
A user who can connect without a password, but only from the local host.
The global privileges are all set to 'N'?the USAGE privilege type allows you to create a user with no privileges. It is assumed that you will grant database-specific privileges later.

[high]FINAL STEPS[/high]
01. Go to Start > Programs > Startup
Delete the 'Monitor Apache Servers' and 'MySQL Admin' tools. They waist your resources for nothing and are not needed. I personally moved the MySQL Admin tool to another folder, in case I want to create later another database.

02. The C:\Network\Apache2\htdocs folder is your web root. Create there a sub-folder called 'forum'.
You know the rest of VB installation drill... Once you are done, call your forum index.php at:
http://localhost/forum

NOTE: If you experience any cookie problems, add this line to your vBulletin config.php file:
define('USE_COOKIE_WORKAROUND', 1);

That's all. No more uploads needed to test the hacks.
Please post here if you were successful with the localhost installation. It works perfectly for me on winXP.
------------------------------------------------------

BACKUP-RESTORE ON localhost
(See also Velocd's tutorial)

[high]TOOLS NEEDED[/high]
- Open Command Window PowerToy - 0.5MB (for more info, visit Microsoft site)

NOTE: This PowerToy adds an "Open Command Window Here" context menu option on file system folders, giving you a quick way to open a command window (cmd.exe) pointing at the selected folder.

[high]BACKUP PROCEDURE[/high]
01. Create a new folder, called 'C:\sqlback'.

02. Right-click on the [high]C:\Network\MySQL\bin[/high] folder and select 'Open Command Window Here'. A CMD window will open.

NOTE: You can also manually browse to the folder. Click on Start > Run > Type [high]cmd[/high] in the 'Open:' area and hit Enter.
At the CMD prompt, type [high]C:[/high] and hit Enter.
Type [high]cd network[/high] and hit Enter.
Type [high]cd mysql[/high] and hit Enter.
Type [high]cd bin[/high] and hit Enter.

03. At the prompt, type:
mysqldump --opt -u[high]USERNAME[/high] -p[high]PASSWORD[/high] [high]DATABASENAME[/high] > c:/sqlback/bk060502.sql

NOTE: Change the highlighted values with your own. When done, you will see the command prompt.
060502: month date year (easier to remember the last date you backup your database). Change it with the corresponding date of your actual backup.

[high]RESTORE PROCEDURE[/high]
This is useful if you want to import onto your localhost the live forum database.

01. Right-click on the [high]C:\Network\MySQL\bin[/high] folder and select 'Open Command Window Here'.

02. At the prompt, type:
mysql -u[high]USERNAME[/high] -p[high]PASSWORD[/high] [high]DATABASENAME[/high] < c:/sqlback/bk060502.sql

NOTE: Change the highlighted values with your own. When done, you will see the command prompt.
------------------------------------------------------

[high]OTHER TUTORIALS[/high]
- How to make a reliable database backup
- Upgrade your hacked board in less then 30 minutes
Reply With Quote
  #422  
Old 01-10-2004, 05:21 AM
Preech Preech is offline
 
Join Date: Aug 2002
Location: Fort Campbell
Posts: 325
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I fully reinstalled MySQL, and changed the login information in my config.php file to username: root with no password and it worked...hmph go figure it was that simple...figured i would share that with everyone in case someone else has the same problem
Reply With Quote
  #423  
Old 01-18-2004, 08:05 PM
Kyle0515 Kyle0515 is offline
 
Join Date: Mar 2003
Posts: 7
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

hmm... I worked on this for 2 days and couldn't get it to work. When I went to bed last night, it still wasn't working. But, when I got on today and tried it, everything was working fine.... Weird. You gotta love a computer that fixes itself... lol

Anyway... Everything is working great. Thanks
Reply With Quote
  #424  
Old 01-26-2004, 09:00 PM
Sadie Frost's Avatar
Sadie Frost Sadie Frost is offline
 
Join Date: Dec 2001
Location: Pittsburgh
Posts: 307
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Working great for me - the two snags I had (in case it helps anyone) is that when I opened the cmd to add the users, I needed a space before the mysql --user bit, and as Preech said in the config.php file I needed to leave the password blank. This is going to help so much - wish I'd found it sooner!
Reply With Quote
  #425  
Old 01-29-2004, 08:35 PM
KayJay KayJay is offline
 
Join Date: Nov 2002
Posts: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

What can I say...Fantastic. So much easier than doing it online. many thanks for a great tutorial.
Reply With Quote
  #426  
Old 02-04-2004, 01:42 PM
ButchGal's Avatar
ButchGal ButchGal is offline
 
Join Date: Jan 2004
Posts: 2
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Great Tutorial. Thank you.

One question

I have done a mysql dump for my online forum.

I want to restore this to my local forum.

When I try to run restore procedure, I get a message that table is already created.
Which of course it is.

What have I done wrong?
Reply With Quote
  #427  
Old 02-10-2004, 05:32 PM
X-Sector X-Sector is offline
 
Join Date: Oct 2003
Posts: 154
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

04. Open a CMD window and change it's location to your current MySQL /bin folder.

05. Set your Users:
\bin> mysql --user=root mysql
mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost
-> IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO monty@'%'
-> IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;
mysql> GRANT USAGE ON *.* TO dummy@localhost;

I'm trying to use a CMD prompt but l couldn't access my network folder in C:
I dunno why

I did a tut of how to access network folder via CMD prompt but l couldn't get it to working, i need help!

Also.. I don't know how to set up any users
Reply With Quote
  #428  
Old 02-10-2004, 08:20 PM
mitomcua mitomcua is offline
 
Join Date: Jul 2003
Posts: 37
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

To make life easier for you go here : http://www.easyphp.org/?lang=en and download the easy php 1.7 which includes and configures :Apache 1.3.27, php 4.3.3, MySQL 4.0.15 ...
Reply With Quote
  #429  
Old 02-10-2004, 08:33 PM
Andreas's Avatar
Andreas Andreas is offline
 
Join Date: Jan 2004
Location: Germany
Posts: 6,863
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Or take XAMPP form www.apachefriends.org which includes preconfigured Apache 2.0.48, MySQL 4.0.17, PHP 4.3.4 + mod_php 4.3.4, Perl 5.8.2 + mod_perl 1.99_12,
Openssl 0.9.7c + mod_ssl 2.0.48 & PHPMyAdmin 2.5.5 pl1
Reply With Quote
  #430  
Old 02-10-2004, 08:56 PM
X-Sector X-Sector is offline
 
Join Date: Oct 2003
Posts: 154
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

How do you set up any users?
Reply With Quote
  #431  
Old 02-10-2004, 10:54 PM
X-Sector X-Sector is offline
 
Join Date: Oct 2003
Posts: 154
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

how do u get it to connect from ur mysql db? cuz it doesn't work for me.
Reply With Quote
  #432  
Old 02-10-2004, 10:59 PM
X-Sector X-Sector is offline
 
Join Date: Oct 2003
Posts: 154
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Well, I just tried to connect to my database without a user and password but l got this error..

Attempting to attach to database...

Connect failed: unexpected error from the database.

Error number: 1044

Error description: Access denied for user: '@localhost' to database 'vbulletin'

Please ensure that the database and server is correctly configured and try again.

Click to go to the vBulletin website

I tried to connect to my database with a user and password but it said that it cant connect to my database. What did l do?
Reply With Quote
  #433  
Old 02-15-2004, 03:16 AM
blakkboy's Avatar
blakkboy blakkboy is offline
 
Join Date: Aug 2003
Location: Baltimore
Posts: 251
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

this is where im stuck

04. Open a CMD window and change it's location to your current MySQL /bin folder.

05. Set your Users:
\bin> mysql --user=root mysql
mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost
-> IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO monty@'%'
-> IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;
mysql> GRANT USAGE ON *.* TO dummy@localhost;

i dont understand what the CMD window is and where to set your users

also mysql admin is not on for some reason....... its running a red light and i take it that the light is supposed to be greeen
Reply With Quote
  #434  
Old 02-15-2004, 08:08 AM
Dean C's Avatar
Dean C Dean C is offline
 
Join Date: Jan 2002
Location: England
Posts: 9,071
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I think in the mysql > bin folder there's an exe where you can execute mysql queries within a DOS interface
Reply With Quote
  #435  
Old 02-15-2004, 04:44 PM
blakkboy's Avatar
blakkboy blakkboy is offline
 
Join Date: Aug 2003
Location: Baltimore
Posts: 251
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

^^^ ok thanx i seem to have gotten it now
Reply With Quote
  #436  
Old 02-16-2004, 01:02 AM
blakkboy's Avatar
blakkboy blakkboy is offline
 
Join Date: Aug 2003
Location: Baltimore
Posts: 251
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Velocd
Quick Tutorial - How to backup/restore on a localhost

I thought I would make this because I fought alittle trying to get this working using the MSDOS shell, and found some things to be alittle different than from what backing up is usually like.
Once again, thanks to FWC for the tip, and also Logican from another post providing me some info

(note: done using Windows XP, should work on older OS also)

----------------------------------------------------------------------------------------

1. Copy and paste the following into your address bar, then hit enter: %SystemRoot%\system32\cmd.exe

2. Now depending on how you installed MySQL on your system, either with or without PHPTriad, you need to browse to that directory bin folder.

For example, if you did use PHPTriad, type cd c:\apache\mysql\bin.


3. For BACKING UP:

Type mysqldump -u username --opt database_name > backupfile.sql, filling in username and database_name with the correct values.

This method worked perfectly for me using the PHPTriad installation, should do the same with the other. If it asks you for a password, enter the password.


4. For RESTORING:

Type -u root -ppassword database_name < backupfile.sql in the command prompt.

You might get an error saying a table already exists, if so you need to clear your current database. Go into phpmyadmin and drop it that way. Be sure not to drop the whole database eliminating it, but just dropping the tables. Before doing this check your database backup you just created to make sure it actually created its and is not corrupt.

Thats it!

im having trouble trying to restore my sql file from my real boards to my test ones.

-root -password vbulletin < blakkboy_vb.sql

that is what im typing into the prompt but its saying that its not restoring.

can someone help me out who used triad to set this up?
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 03:24 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05771 seconds
  • Memory Usage 2,396KB
  • Queries Executed 31 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_article
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (1)pagenav_pagelinkrel
  • (16)post_thanks_box
  • (16)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (16)post_thanks_postbit_info
  • (15)postbit
  • (16)postbit_onlinestatus
  • (16)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete