Sphinx Search Beginner's Guide
|
|
|
- Audrey Gallagher
- 9 years ago
- Views:
Transcription
1 P U B L I S H I N G community experience distilled Sphinx Search Beginner's Guide Abbas Ali Chapter No. 2 "Getting Started"
2 In this package, you will find: A Biography of the author of the book A preview chapter from the book, Chapter NO.2 "Getting Started" A synopsis of the book s content Information on where to buy this book About the Author Abbas Ali has over six years of experience in PHP Development and is a Zend Certified PHP 5 Engineer. A Mechanical Engineer by education, Abbas turned to software development just after finishing his engineering degree. He is a member of the core development team for the Coppermine Photo Gallery, an open source project, which is one of the most popular photo gallery applications in the world. Fascinated with both machines and knowledge, Abbas is always learning new programming techniques. He got acquainted with Sphinx in 2009 and has been using it in most of his commercial projects ever since. He loves open source and believes in contributing back to the community. Abbas is married to Tasneem and has a cute little daughter, Munira. He has lived in Nagpur (India) since his birth and is in no rush to move to any other city in the world. In his free time he loves to watch movies and television. He is also an amateur photographer and cricketer. Abbas is currently working as Chief Operating Officer and Technical Manager at SANIsoft Technologies Private Limited, Nagpur, India. The company specializes in development of large, high performance, and scalable PHP applications. For feedback and suggestions, you can contact Abbas at: Web :
3 Sphinx Search Beginner's Guide This book will serve as a guide to everything that you need to know about running a Sphinx Search Engine. In today's world, search is an integral part of any application; a reliable search engine like Sphinx Search can be the difference between running a successful and unsuccessful business. What good is being on the web if no one knows you are there? It's easy to build a proficient search engine, with Sphinx Search: Beginners Guide at hand. What This Book Covers Chapter 1, Setting Up Sphinx is an introduction to Sphinx. It guides the reader through the installation process for Sphinx on all major operating systems. Chapter 2, Getting Started demonstrates some basic usage of Sphinx in order to test its installation. It also discusses full-text search and gives the reader an overview of Sphinx. Chapter 3, Indexing teaches the reader how to create indexes. It introduces and explains the different types of datasources, and also discusses different types of attributes that can comprise an index. Chapter 4, Searching teaches the reader how to use the Sphinx Client API to search indexes from within PHP applications. It shows the reader how to use the PHP implementation of the Sphinx Client API. Chapter 5, Feed Search creates an application that fetches feed items and creates a Sphinx index. This index is then searched from a PHP application. It also introduces delta indexes and live index merging. Chapter 6, Property Search creates a real world real estate portal where the user can add a property listing and specify different attributes for it so that you can search for properties based on specific criteria. Some advanced search techniques using a client API are discussed in this chapter. Chapter 7, Sphinx Configuration discusses all commonly used configuration settings for Sphinx. It teaches the reader how to configure Sphinx in a distributed environment where indexes are kept on multiple machines. Chapter 8, What Next? discusses some new features introduced in the recent Sphinx release. It also shows the reader how a Sphinx index can be searched using a MySQL client library. Lastly, it discusses the scenarios where Sphinx can be used and mentions some of the popular Web applications that are powered by a Sphinx search engine.
4 2 Getting Started Now that we have installed Sphinx, let's move forward and take a look at different search techniques and get acquainted with the different ulies Sphinx has to offer. In this chapter we will take a dive into full-text search and look at different advantages of it. We will then see how Sphinx ulizes full-text search and also learn about indexer, search and searchd ulies that come along with Sphinx. We will also see a very basic example of how Sphinx works. Make sure that you have installed Sphinx using the steps menoned in Chapter 1, Seng Up Sphinx before proceeding. Checking the installation Before we proceed any further, let's first check whether Sphinx was properly installed on our system. As we had used the --prefix configure opon during installaon, all Sphinx binaries and configuraon files must have been placed in one single directory, that is, the one which was specified with --prefix. We are assuming that you have installed Sphinx on a Linux machine. If everything went fine then a directory /usr/local/sphinx should have been created on your system. It should be structured in the same way as the following screenshot.
5 Geng Started I have used a Linux (Ubuntu 10.04) machine for all the examples shown in this book. Further, I presume that you have installed Sphinx with the configure opon --prefix=/usr/local/sphinx You can see that we have a few binary files in bin directory and few configuraon files in the etc directory. Then we have the var directory that will hold the actual index data and search logs. We will look at all of these in details in later chapters. To test whether the Sphinx binary is working first change your directory to bin: $ cd /usr/local/sphinx/bin Then issue the command./indexer : You can see that it outputs some informaon along with the version of Sphinx being installed, which in our case is The output above confirms that we are good to go, so let's move forward [ 20 ]
6 Full-text search Chapter 2 Sphinx is a full-text search engine. So, before going any further, we need to understand what full-text search is and how it excels over the tradional searching. What is full-text search? Full-text search is one of the techniques for searching a document or database stored on a computer. While searching, the search engine goes through and examines all of the words stored in the document and tries to match the search query against those words. A complete examinaon of all the words (text) stored in the document is undertaken and hence it is called a full-text search. Full-text search excels in searching large volumes of unstructured text quickly and effecvely. It returns pages based on how well they match the user's query. Traditional search To understand the difference between a normal search and full-text search, let's take an example of a MySQL database table and perform searches on it. It is assumed that MySQL Server and phpmyadmin are already installed on your system. Time for action normal search in MySQL 1. Open phpmyadmin in your browser and create a new database called myblog. 2. Select the myblog database: [ 21 ]
7 Geng Started 3. Create a table by execung the following query: CREATE TABLE `posts` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `title` VARCHAR( 255 ) NOT NULL, `description` TEXT NOT NULL, `created` DATETIME NOT NULL, `modified` DATETIME NOT NULL ) ENGINE = MYISAM; Queries can be executed from the SQL page in phpmyadmin. You can find the link to that page in the top menu. 4. Populate the table with some records: INSERT INTO `posts`(`id`, `title`, `description`, `created`, `modified`) VALUES (1, 'PHP scripting language', 'PHP is a web scripting language originally created by Rasmus Lerdorf', NOW(), NOW()), (2, 'Programming Languages', 'There are many languages available to cater any kind of programming need', NOW(), NOW()), (3, 'My Life', 'This post is about my life which in a sense is beautiful', NOW(), NOW()), (4, 'Life on Mars', 'Is there any life on mars?', NOW(), NOW()); 5. Next, run the following queries against the table: SELECT * FROM posts WHERE title LIKE 'programming%'; The above query returns row 2. SELECT * FROM posts WHERE description LIKE '%life%'; The above query return rows 3 and 4. SELECT * FROM posts WHERE description LIKE '%scripting language%'; [ 22 ]
8 Chapter 2 The above query returns row 1. SELECT * FROM posts WHERE description LIKE '%beautiful%' OR description LIKE '%programming%'; The above query returns rows 2 and 3. phpmyadmin To administer MySQL database, I highly recommend using a GUI interface tool like phpmyadmin ( All the above menoned queries can easily be executed in phpmyadmin and the results are displayed in a user friendly manner. What just happened? We first created a table posts to hold some data. Each post has a title and a description. We then populated the table with some records. With the first SELECT query we tried to find all posts where the title starts with the word programming. This correctly gave us the row number 2. But what if you want to search for the word anywhere in the field and not just at that start? For this we fired the second query, wherein we searched for the word life anywhere in the descripon of the post. Again this worked prey well for us and as expected we got the result in the form of row numbers 3 and 4. Now what if we wanted to search for mulple words? For this we fired the third query where we searched for the words scripng language. As row 1 has those words in its description, it was returned correctly. Unl now everything looked fine and we were able to perform searches without any hassle. The query gets complex when we want to search for mulple words and those words are not necessarily placed consecuvely in a field, that is, side by side. One such example is shown in the form of our fourth query where we tried to search for the words programming and beauful in the descripon of the posts. Since the number of words we need to search for increases, this query gets complicated, and moreover, slow in execuon, since it needs to match each word individually. [ 23 ]
9 Geng Started The previous SELECT queries and their output also don't give us any informaon about the relevance of the search terms with the results found. Relevance can be defined as a measure of how closely the returned database records match the user's search query. In other words, how pernent the result set is to the search query. Relevance is very important in the search world because users want to see the items with highest relevance at the top of their search results. One of the major reasons for the success of Google is that their search results are always sorted by relevance. MySQL full-text search This is where full-text search comes to the rescue. MySQL has inbuilt support for full-text search and you only need to add FULLTEXT INDEX to the field against which you want to perform your search. Connuing the earlier example of the posts table, let's add a full-text index to the description field of the table. Run the following query: ALTER TABLE `posts` ADD FULLTEXT ( `description` ); The query will add an INDEX of type FULLTEXT to the description field of the posts table. Only MyISAM Engine in MySQL supports the full-text indexes. Now to search for all the records which contain the words programming or beauful anywhere in their descripon, the query would be: SELECT * FROM posts WHERE MATCH (description) AGAINST ('beautiful programming'); This query will return rows 2 and 3, and the returned results are sorted by relevance. One more thing to note is that this query takes less me than the earlier query, which used LIKE for matching. By default, the MATCH() funcon performs a natural language search, it aempts to use natural language processing to understand the nature of the query and then search accordingly. [ 24 ]
10 Chapter 2 Full-text search in MySQL is a big topic in itself and we have only seen the p of the iceberg. For a complete reference, please refer to the MySQL manual at Advantages of full-text search The following points are some of the major advantages of full-text search: It is quicker than tradional searches as it benefits from an index of words that is used to look up records instead of doing a full table scan It gives results that can be sorted by relevance to the searched phrase or term, with sophiscated ranking capabilies to find the best documents or records It performs very well on huge databases with millions of records It skips the common words such as the, an, for, and so on When to use a full-text search? When there is a high volume of free-form text data to be searched When there is a need for highly opmized search results When there is a demand for flexible search querying Overview of Sphinx Sphinx is an external soluon for database search, which means that it runs outside the main database used for your applicaon. It takes data from the database and creates indexes that are stored on a file system. These indexes are highly opmized for searching and your applicaon uses an API to search the indexes. Sphinx interacts with the database using a data source driver which comes along with Sphinx. You need to specify which data source driver should be used by Sphinx in its configuraon file. Primary programs As shown at the beginning of this chapter, Sphinx is shipped with some binary programs which were installed at /usr/local/sphinx/bin directory. Let's take a look at two principal programs that are used by Sphinx for indexing and searching purposes. indexer: This program is used for indexing and re-indexing full-text indexes. By default, Sphinx reads the configuraon file at /usr/local/sphinx/etc/sphinx. conf to know what and how to index. We will be dealing with sphinx.conf in more detail during later chapters. [ 25 ]
11 Geng Started searchd: This is the daemon used for searching the indexes. It requires a client to access the Sphinx API. There are a number of searchd client API implementaons available for Sphinx. Enough talking about Sphinx, now let's see it in acon Time for action Sphinx in action Let's see an example of how Sphinx works. We will create an index and then search it using the Sphinx command line ulity as well as the PHP client implementaon. So let's begin: 1. Firstly, create a MySQL database named test, if it is not already there: CREATE DATABASE test; Sphinx ships with a sample configuraon file and a sample database table to be used for demo purposes. The SQL for the table is located at /usr/local/sphinx/etc/ example.sql and it contains the following SQL: DROP TABLE IF EXISTS test.documents; CREATE TABLE test.documents ( id INTEGER PRIMARY KEY NOT NULL AUTO_INCREMENT, group_id INTEGER NOT NULL, group_id2 INTEGER NOT NULL, date_added DATETIME NOT NULL, title VARCHAR(255) NOT NULL, content TEXT NOT NULL ); REPLACE INTO test.documents ( id, group_id, group_id2, date_added, title, content ) VALUES ( 1, 1, 5, NOW(), 'test one', 'this is my test document number one. also checking search within phrases.' ), ( 2, 1, 6, NOW(), 'test two', 'this is my test document number two' ), ( 3, 2, 7, NOW(), 'another doc', 'this is another group' ), ( 4, 2, 8, NOW(), 'doc number four', 'this is to test groups' ); DROP TABLE IF EXISTS test.tags; CREATE TABLE test.tags ( docid INTEGER NOT NULL, [ 26 ]
12 Chapter 2 tagid INTEGER NOT NULL, UNIQUE(docid,tagid) ); INSERT INTO test.tags VALUES (1,1), (1,3), (1,5), (1,7), (2,6), (2,4), (2,2), (3,15), (4,7), (4,40); You can copy the SQL and paste it in your phpmyadmin interface to run the SQL or execute the following command to import the SQL from the command line in Linux: $ mysql -u root < /usr/local/sphinx/etc/example.sql 2. Next, create the configuraon file (you may need the permissions to create the file): $ cd /usr/local/sphinx/etc $ cp sphinx-min.conf.dist sphinx.conf Now edit sphinx.conf in your favorite editor (you may need to change the permissions of the file to be able to modify it). The first block of the file looks something like this: source src1 { type = mysql sql_host = localhost sql_user = test sql_pass = sql_db = test sql_port = 3306 # optional, default is 3306 sql_query = \ SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content \ FROM documents } sql_attr_uint sql_attr_timestamp sql_query_info = group_id = date_added = SELECT * FROM documents WHERE id=$id [ 27 ]
13 Geng Started 3. Change the value of sql_host, sql_user, sql_pass and sql_db as per your system: sql_host sql_user sql_pass sql_db = localhost = myuser = mypass = test If you have not installed the Sphinx at /usr/local/sphinx then you will need to modify the paths of the following opons as well: path log query_log pid_file 4. Now run the indexer: $ /usr/local/sphinx/bin/indexer --all This will give output as shown in the following screenshot If you have installed Sphinx at a locaon other than /usr/local/sphinx, then you need to use the -c /path/to/sphinx.conf opon in the previous command. 5. Next, let's query the index to see if it works: $ /usr/local/sphinx/bin/search test [ 28 ]
14 Chapter 2 To query the index from our PHP scripts, we first need to start the searchd daemon $ /usr/local/sphinx/bin/searchd To run searchd commands, you need to be the root user. You can either switch to root user using the su - command, or you could prefix all searchd commands with sudo. 6. Now, go to the directory where you extracted the Sphinx tarball during installaon (in Chapter 1, Seng Up Sphinx) and run the command as shown here: $ cd /path/to/sphinx $ php api/test.php test [ 29 ]
15 Geng Started The command will output the search results, which confirms that searchd is working properly and we can search from our applicaons using the client API. What just happened? We created an index from the data stored in a MySQL table. We then used Sphinx's search ulity to search for the test term in the index. The results showed that Sphinx is working properly and that the index we created was fine. The major difference between search results by MySQL and Sphinx is that Sphinx does not return the actual data but only the document id. Using these document IDs, we need to fetch the actual data (from its source) to display it. Along with the document id, Sphinx also returns all the aributes and weight of each document. The higher the weight, the higher the relevance of that document with the search query. We then used the PHP implementaon of the Sphinx Client API to search for the same test term, but this me from within a PHP script. Data to be indexed The first thing we did was to create a MySQL database and then import the sample data in to it. This gave us the data as shown in the following screenshot: Throughout this book, the dates and mes shown may differ from what you would have in your database or index. So don't worry about that. [ 30 ]
16 Chapter 2 Creating the Sphinx configuration file Sphinx creates an index based on the opons defined in the Sphinx configuraon file sphinx. conf. This file is divided into different secons: source: This secon holds all the sengs related to the source of the data to be indexed, which in our case is a MySQL database. index: This secon holds opons which tell Sphinx where and how to save the index. These opons are used during indexing-me. indexer: This secon holds opons for the indexer program. searchd: This secon holds the opons used while searching the index. In this chapter we will not go into great detail about all the opons used in the configuraon file. However, a few opons to look for are: sql_*: These opons are there to tell Sphinx about different MySQL sengs; such as username, password, the database to use, and the port to use. sql_query : This opon holds the query that will be fired in order to get the data from the MySQL database. Once the configuraon file is ready, index can be created by issuing the following command. $ /usr/local/sphinx/bin/indexer all During the indexing operaon, some informaon is displayed in the console such as what configuraon file is being used by the indexer, how many documents were found, how much me it took to index, and other related informaon. To run indexer commands, you need to be the root user. You can either switch to root user using the su - command, or you could prefix all indexer commands with sudo. Searching the index Sphinx provides a command-line ulity search which comes in handy to quickly query the index that we created earlier. However, this ulity should only be used for tesng purposes. In the producon environment one should always use the searchd and its client API implementaon. $ /usr/local/sphinx/bin/search test [ 31 ]
17 Geng Started The output of the search command gives us the results that matched the search term test. The result shows us the document id and weight, amongst other informaon for the queried term. Similar informaon is displayed when we use the PHP client API to search. Have a go hero We created a very basic example to see how Sphinx works; however, you can extend and explore this by: Adding a few more records to the documents table Re-indexing the documents table Searching with different search phrases and examining the returned results and their weights Why use Sphinx for full-text searching? If you're looking for a good Database Management System (DBMS), there are plenty of opons available with support for full-text indexing and searches, such as MySQL, PostgreSQL, and SQL Server. There are also external full-text search engines, such as Lucene and Solr. Let's see the advantages of using Sphinx over the DBMS's full-text searching capabilies and other external search engines: It has a higher indexing speed. It is 50 to 100 mes faster than MySQL FULLTEXT and 4 to 10 mes faster than other external search engines. It also has higher searching speed since it depends heavily on the mode, Boolean vs. phrase, and addional processing. It is up to 500 mes faster than MySQL FULLTEXT in cases involving a large result set with GROUP BY. It is more than two mes faster in searching than other external search engines available. As menoned earlier, relevancy is among the key features one expects when using a search engine, and Sphinx performs very well in this area. It has phrase-based ranking in addion to classic stascal BM25 ranking. Last but not the least, Sphinx has beer scalability. It can be scaled vercally (ulizing many CPUs, many HDDs) or horizontally (ulizing many servers), and this comes out of the box with Sphinx. One of the biggest known Sphinx cluster has over 3 billion records with more than 2 terabytes of size. [ 32 ]
18 Chapter 2 In one of his presentaons, Andrew Aksyonoff (creator of Sphinx) presented the following benchmarking results. Approximately 3.5 Million records with around 5 GB of text were used for the purpose. MySQL Lucene Sphinx Indexing me, min Index size, MB Match all, ms/q Match phrase, ms/q Match bool top-20, ms/q Apart from a basic search, there are many features that make Sphinx a beer soluon for searching. These features include mulvalve aributes, tokenizing sengs, wordforms, HTML processing, geosearching, ranking, and many others. We will be taking a more elaborate look at some of these features in later chapters. Summary In this chapter: We learned how to check whether Sphinx was installed properly or not. We saw the directory structure Sphinx creates to store its binary files, configuraon files, and other data. We then learned what full-text search is and what its advantages over normal search are. We also saw how full-text search has been implemented in MySQL with an example. We saw the syntax of an SQL query used to search a full-text indexed field in MySQL. We have also seen why to use Sphinx, an external search engine, instead of database's nave full-text support. We saw how Sphinx excels in many ways, and outperforms most of the databases and external search engines available today. Lastly we saw how to create an index using the indexer ulity, and then how to search that index from the command line as well as other applicaons using client API implementaons. Having armed ourselves with all the basics we need to know, we are ready to start creang indexes with more opons available to us. [ 33 ]
19 Where to buy this book You can buy Sphinx Search Beginner's Guide from the Packt Publishing website: Free shipping to the US, UK, Europe and selected Asian countries. For more information, please read our shipping policy. Alternatively, you can buy the book from Amazon, BN.com, Computer Manuals and most internet book retailers. P U B L I S H I N G community experience distilled
Selenium 1.0 Testing Tools
P U B L I S H I N G community experience distilled Selenium 1.0 Testing Tools David Burns Chapter No. 6 "First Steps with Selenium RC" In this package, you will find: A Biography of the author of the book
Full Text Search with Sphinx
OSCON 2009 Peter Zaitsev, Percona Inc Andrew Aksyonoff, Sphinx Technologies Inc. Sphinx in a nutshell Free, open-source full-text search engine Fast indexing and searching Scales well Lots of other (unique)
Citrix XenMobile Mobile Device Management
Citrix XenMobile Mobile Device Management Akash Phoenix Chapter No. 4 "XenMobile Device Manager Deployment" In this package, you will find: A Biography of the author of the book A preview chapter from
Full Text Search in MySQL 5.1 New Features and HowTo
Full Text Search in MySQL 5.1 New Features and HowTo Alexander Rubin Senior Consultant, MySQL AB 1 Full Text search Natural and popular way to search for information Easy to use: enter key words and get
Kaseya Fundamentals Workshop DAY THREE. Developed by Kaseya University. Powered by IT Scholars
Kaseya Fundamentals Workshop DAY THREE Developed by Kaseya University Powered by IT Scholars Kaseya Version 6.5 Last updated March, 2014 Day Two Overview Day Two Lab Review Patch Management Configura;on
Hunk & Elas=c MapReduce: Big Data Analy=cs on AWS
Copyright 2014 Splunk Inc. Hunk & Elas=c MapReduce: Big Data Analy=cs on AWS Dritan Bi=ncka BD Solu=ons Architecture Disclaimer During the course of this presenta=on, we may make forward looking statements
CSCI110 Exercise 4: Database - MySQL
CSCI110 Exercise 4: Database - MySQL The exercise This exercise is to be completed in the laboratory and your completed work is to be shown to the laboratory tutor. The work should be done in week-8 but
Database Administration with MySQL
Database Administration with MySQL Suitable For: Database administrators and system administrators who need to manage MySQL based services. Prerequisites: Practical knowledge of SQL Some knowledge of relational
Installation of PHP, MariaDB, and Apache
Installation of PHP, MariaDB, and Apache A few years ago, one would have had to walk over to the closest pizza store to order a pizza, go over to the bank to transfer money from one account to another
Kollaborate Server Installation Guide!! 1. Kollaborate Server! Installation Guide!
Kollaborate Server Installation Guide 1 Kollaborate Server Installation Guide Kollaborate Server is a local implementation of the Kollaborate cloud workflow system that allows you to run the service in-house
Livezilla How to Install on Shared Hosting http://www.jonathanmanning.com By: Jon Manning
Livezilla How to Install on Shared Hosting By: Jon Manning This is an easy to follow tutorial on how to install Livezilla 3.2.0.2 live chat program on a linux shared hosting server using cpanel, linux
Building Data-centric Websites with Dataface. Steve Hannah Faculty of Applied Sciences Simon Fraser University [email protected]
Building Data-centric Websites with Dataface Steve Hannah Faculty of Applied Sciences Simon Fraser University [email protected] What does Data-centric Mean? Centred around the data of the site. Use a database
How To Install Amyshelf On Windows 2000 Or Later
Contents I Table of Contents Part I Document Overview 2 Part II Document Details 3 Part III Setup 4 1 Download & Installation... 4 2 Configure MySQL... Server 6 Windows XP... Firewall Settings 13 3 Additional
CPE111 COMPUTER EXPLORATION
CPE111 COMPUTER EXPLORATION BUILDING A WEB SERVER ASSIGNMENT You will create your own web application on your local web server in your newly installed Ubuntu Desktop on Oracle VM VirtualBox. This is a
SQL Server Integration Services Using Visual Studio 2005
SQL Server Integration Services Using Visual Studio 2005 A Beginners Guide Jayaram Krishnaswamy Chapter No. 13 "Package to Copy a Table from Oracle XE" In this package, you will find: A Biography of the
How To Install Storegrid Server On Linux On A Microsoft Ubuntu 7.5 (Amd64) Or Ubuntu (Amd86) (Amd77) (Orchestra) (For Ubuntu) (Permanent) (Powerpoint
StoreGrid Linux Server Installation Guide Before installing StoreGrid as Backup Server (or) Replication Server in your machine, you should install MySQL Server in your machine (or) in any other dedicated
Benchmarking and monitoring tools
Benchmarking and monitoring tools Presented by, MySQL & O Reilly Media, Inc. Section one: Benchmarking Benchmarking tools and the like! mysqlslap! sql-bench! supersmack! Apache Bench (combined with some
UQC103S1 UFCE47-20-1. Systems Development. uqc103s/ufce47-20-1 PHP-mySQL 1
UQC103S1 UFCE47-20-1 Systems Development uqc103s/ufce47-20-1 PHP-mySQL 1 Who? Email: [email protected] Web Site www.cems.uwe.ac.uk/~jedawson www.cems.uwe.ac.uk/~jtwebb/uqc103s1/ uqc103s/ufce47-20-1 PHP-mySQL
The SkySQL Administration Console
www.skysql.com The SkySQL Administration Console Version 1.1 Draft Documentation Overview The SkySQL Administration Console is a web based application for the administration and monitoring of MySQL 1 databases.
Virtual Machine daloradius Administrator Guide Version 0.9-9
Virtual Machine daloradius Administrator Guide Version 0.9-9 May 2011 Liran Tal of Enginx Contact Email: daloradius Website: Enginx website: [email protected] http://www.daloradius.com http://www.enginx.com
A Brief Introduction to MySQL
A Brief Introduction to MySQL by Derek Schuurman Introduction to Databases A database is a structured collection of logically related data. One common type of database is the relational database, a term
Mercury Users Guide Version 1.3 February 14, 2006
Mercury Users Guide Version 1.3 February 14, 2006 1 Introduction Introducing Mercury Your corporate shipping has just become easier! The satisfaction of your customers depends on the accuracy of your shipments,
MySQL Quick Start Guide
Quick Start Guide MySQL Quick Start Guide SQL databases provide many benefits to the web designer, allowing you to dynamically update your web pages, collect and maintain customer data and allowing customers
Application note: SQL@CHIP Connecting the IPC@CHIP to a Database
Application note: SQL@CHIP Connecting the IPC@CHIP to a Database 1. Introduction This application note describes how to connect an IPC@CHIP to a database and exchange data between those. As there are no
Hyper-V Replica Essentials
Hyper-V Replica Essentials Vangel Krstevski Chapter No. 3 "Configuring Hyper-V Replica" In this package, you will find: A Biography of the author of the book A preview chapter from the book, Chapter NO.3
MySQL Quick Start Guide
Fasthosts Customer Support MySQL Quick Start Guide This guide will help you: Add a MySQL database to your account. Find your database. Add additional users. Use the MySQL command-line tools through ssh.
Bacula Open Source Project Bacula Systems (professional support)
Bacula Open Source Project Bacula Systems (professional support) The Enterprise Ready Open Source Network Backup Solu
Kony MobileFabric. Sync Windows Installation Manual - WebSphere. On-Premises. Release 6.5. Document Relevance and Accuracy
Kony MobileFabric Sync Windows Installation Manual - WebSphere On-Premises Release 6.5 Document Relevance and Accuracy This document is considered relevant to the Release stated on this title page and
Drupal 7 Fields/CCK Beginner's Guide
P U B L I S H I N G community experience distilled Drupal 7 Fields/CCK Beginner's Guide Dave Poon Chapter No. 5 "File and Image Fields" In this package, you will find: A Biography of the author of the
Search Big Data with MySQL and Sphinx. Mindaugas Žukas www.ivinco.com
Search Big Data with MySQL and Sphinx Mindaugas Žukas www.ivinco.com Agenda Big Data Architecture Factors and Technologies MySQL and Big Data Sphinx Search Server overview Case study: building a Big Data
SQL Injection. Blossom Hands-on exercises for computer forensics and security
Copyright: The development of this document is funded by Higher Education of Academy. Permission is granted to copy, distribute and /or modify this document under a license compliant with the Creative
Version of this tutorial: 1.06a (this tutorial will going to evolve with versions of NWNX4)
Version of this tutorial: 1.06a (this tutorial will going to evolve with versions of NWNX4) The purpose of this document is to help a beginner to install all the elements necessary to use NWNX4. Throughout
SIMIAN systems. Setting up a Sitellite development environment on Windows. Sitellite Content Management System
Setting up a Sitellite development environment on Windows Sitellite Content Management System Introduction For live deployment, it is strongly recommended that Sitellite be installed on a Unix-based operating
G563 Quantitative Paleontology. SQL databases. An introduction. Department of Geological Sciences Indiana University. (c) 2012, P.
SQL databases An introduction AMP: Apache, mysql, PHP This installations installs the Apache webserver, the PHP scripting language, and the mysql database on your computer: Apache: runs in the background
Offensive & Defensive & Forensic Techniques for Determining Web User Iden<ty
Offensive & Defensive & Forensic Techniques for Determining Web User Iden
Defending Against Web App A0acks Using ModSecurity. Jason Wood Principal Security Consultant Secure Ideas
Defending Against Web App A0acks Using ModSecurity Jason Wood Principal Security Consultant Secure Ideas Background Info! Penetra?on Tester, Security Engineer & Systems Administrator!!!! Web environments
MarkLogic Server. Installation Guide for All Platforms. MarkLogic 8 February, 2015. Copyright 2015 MarkLogic Corporation. All rights reserved.
Installation Guide for All Platforms 1 MarkLogic 8 February, 2015 Last Revised: 8.0-4, November, 2015 Copyright 2015 MarkLogic Corporation. All rights reserved. Table of Contents Table of Contents Installation
Mul$media im Netz (Online Mul$media) Wintersemester 2014/15. Übung 03 (Nebenfach)
Mul$media im Netz (Online Mul$media) Wintersemester 2014/15 Übung 03 (Nebenfach) Online Mul?media WS 2014/15 - Übung 3-1 Databases and SQL Data can be stored permanently in databases There are a number
SQL Server An Overview
SQL Server An Overview SQL Server Microsoft SQL Server is designed to work effectively in a number of environments: As a two-tier or multi-tier client/server database system As a desktop database system
Apache JMeter. Emily H. Halili. Chapter No. 6 "Functional Testing"
Apache JMeter Emily H. Halili Chapter No. 6 "Functional Testing" In this package, you will find: A Biography of the author of the book A preview chapter from the book, Chapter NO.6 "Functional Testing"
Online shopping store
Online shopping store 1. Research projects: A physical shop can only serves the people locally. An online shopping store can resolve the geometrical boundary faced by the physical shop. It has other advantages,
Using ODBC with MDaemon 6.5
Using ODBC with MDaemon 6.5 Alt-N Technologies, Ltd 1179 Corporate Drive West, #103 Arlington, TX 76006 Tel: (817) 652-0204 2002 Alt-N Technologies. All rights reserved. Other product and company names
Setting Up a CLucene and PostgreSQL Federation
Federated Desktop and File Server Search with libferris Ben Martin Abstract How to federate CLucene personal document indexes with PostgreSQL/TSearch2. The libferris project has two major goals: mounting
VERSION 9.02 INSTALLATION GUIDE. www.pacifictimesheet.com
VERSION 9.02 INSTALLATION GUIDE www.pacifictimesheet.com PACIFIC TIMESHEET INSTALLATION GUIDE INTRODUCTION... 4 BUNDLED SOFTWARE... 4 LICENSE KEY... 4 SYSTEM REQUIREMENTS... 5 INSTALLING PACIFIC TIMESHEET
INSTALLING, CONFIGURING, AND DEVELOPING WITH XAMPP
INSTALLING, CONFIGURING, AND DEVELOPING WITH XAMPP by Dalibor D. Dvorski, March 2007 Skills Canada Ontario DISCLAIMER: A lot of care has been taken in the accuracy of information provided in this article,
Getting Started with Telerik Data Access. Contents
Contents Overview... 3 Product Installation... 3 Building a Domain Model... 5 Database-First (Reverse) Mapping... 5 Creating the Project... 6 Creating Entities From the Database Schema... 7 Model-First
NETWORK DEVICE SECURITY AUDITING
E-SPIN PROFESSIONAL BOOK VULNERABILITY MANAGEMENT NETWORK DEVICE SECURITY AUDITING ALL THE PRACTICAL KNOW HOW AND HOW TO RELATED TO THE SUBJECT MATTERS. NETWORK DEVICE SECURITY, CONFIGURATION AUDITING,
HowTo. Planning table online
HowTo Project: Description: Planning table online Installation Version: 1.0 Date: 04.09.2008 Short description: With this document you will get information how to install the online planning table on your
Backup and Restore MySQL Databases
Backup and Restore MySQL Databases As you use XAMPP, you might find that you need to backup or restore a MySQL database. There are two easy ways to do this with XAMPP: using the browser-based phpmyadmin
Build it with Drupal 8
Build it with Drupal 8 Comprehensive guide for building common websites in Drupal 8. No programming knowledge required! Antonio Torres This book is for sale at http://leanpub.com/drupal-8-book This version
JAMF Software Server Installation Guide for Linux. Version 8.6
JAMF Software Server Installation Guide for Linux Version 8.6 JAMF Software, LLC 2012 JAMF Software, LLC. All rights reserved. JAMF Software has made all efforts to ensure that this guide is accurate.
Phone Systems Buyer s Guide
Phone Systems Buyer s Guide Contents How Cri(cal is Communica(on to Your Business? 3 Fundamental Issues 4 Phone Systems Basic Features 6 Features for Users with Advanced Needs 10 Key Ques(ons for All Buyers
Big Data. The Big Picture. Our flexible and efficient Big Data solu9ons open the door to new opportuni9es and new business areas
Big Data The Big Picture Our flexible and efficient Big Data solu9ons open the door to new opportuni9es and new business areas What is Big Data? Big Data gets its name because that s what it is data that
Raspberry Pi Android Projects. Raspberry Pi Android Projects. Gökhan Kurt. Create exciting projects by connecting Raspberry Pi to your Android phone
Fr ee Raspberry Pi is a credit card-sized, general-purpose computer, which has revolutionized portable technology. Android is an operating system that is widely used in mobile phones today. However, there
Bitrix Site Manager. VMBitrix Virtual Machine. Quick Start And Usage Guide
Bitrix Site Manager VMBitrix Virtual Machine. Quick Start And Usage Guide Contents Introduction... 3 Chapter 1. Starting The VMBitrix Virtual Machine... 4 Minimum Requirements For VMWare Player / VMBitrix...
About This Document 3. About the Migration Process 4. Requirements and Prerequisites 5. Requirements... 5 Prerequisites... 5
Contents About This Document 3 About the Migration Process 4 Requirements and Prerequisites 5 Requirements... 5 Prerequisites... 5 Installing the Migration Tool and Enabling Migration 8 On Linux Servers...
Getting Started with Citrix XenApp 6
P U B L I S H I N G professional expertise distilled Getting Started with Citrix XenApp 6 Guillermo Musumeci Chapter No.7 "Managing Policies" In this package, you will find: A Biography of the author of
WordPress Security Scan Configuration
WordPress Security Scan Configuration To configure the - WordPress Security Scan - plugin in your WordPress driven Blog, login to WordPress as administrator, by simply entering the url_of_your_website/wp-admin
SIMIAN systems. Setting up a Sitellite development environment on Mac OS X. Sitellite Content Management System
Setting up a Sitellite development environment on Mac OS X Sitellite Content Management System Introduction Mac OS X is a great platform for web application development, and now with tools like VMWare
INSTALLATION GUIDE VERSION
INSTALLATION GUIDE VERSION 4.1 2014 Copyright 2008 2014. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means electronic or mechanical, for any purpose
CSE/ISE 311: Systems Administra5on Logging
Logging Por$ons courtesy Ellen Liu Outline Introduc$on Finding log files Syslog: the system event logger Linux logrotate tool Condensing log files to useful informa$on Logging policies 13-2 Who and Why
Installing an open source version of MateCat
Installing an open source version of MateCat This guide is meant for users who want to install and administer the open source version on their own machines. Overview 1 Hardware requirements 2 Getting started
RTI Database Integration Service. Getting Started Guide
RTI Database Integration Service Getting Started Guide Version 5.2.0 2015 Real-Time Innovations, Inc. All rights reserved. Printed in U.S.A. First printing. June 2015. Trademarks Real-Time Innovations,
Using Redis as a Cache Backend in Magento
Using Redis as a Cache Backend in Magento Written by: Alexey Samorukov Aleksandr Lozhechnik Kirill Morozov Table of Contents PROBLEMS WITH THE TWOLEVELS CACHE BACKEND CONFIRMING THE ISSUE SOLVING THE ISSUE
Storing SpamAssassin User Data in a SQL Database Michael Parker. [ Start Slide ] Welcome, thanks for coming out today.
Storing SpamAssassin User Data in a SQL Database Michael Parker [ Start Slide ] Welcome, thanks for coming out today. [ Intro Slide ] Like most open source software, heck software in general, SpamAssassin
Drupal + Formulize. A Step-by-Step Guide to Integrating Drupal with XOOPS/ImpressCMS, and installing and using the Formulize module
Drupal + Formulize A Step-by-Step Guide to Integrating Drupal with XOOPS/ImpressCMS, and installing and using the Formulize module May 16, 2007 Updated December 23, 2009 This document has been prepared
How To Backup A Database On A Microsoft Powerpoint 3.5 (Mysqldump) On A Pcode (Mysql) On Your Pcode 3.3.5 On A Macbook Or Macbook (Powerpoint) On
Backing Up and Restoring Your MySQL Database (2004-06-15) - Contributed by Vinu Thomas Do you need to change your web host or switch your database server? This is probably the only time when you really
Introduc)on to. Eric Nagler 11/15/11
Introduc)on to Eric Nagler 11/15/11 What is Oozie? Oozie is a workflow scheduler for Hadoop Originally, designed at Yahoo! for their complex search engine workflows Now it is an open- source Apache incubator
The full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code.
Content Introduction... 2 Data Access Server Control Panel... 2 Running the Sample Client Applications... 4 Sample Applications Code... 7 Server Side Objects... 8 Sample Usage of Server Side Objects...
CYAN SECURE WEB HOWTO. NTLM Authentication
CYAN SECURE WEB HOWTO June 2008 Applies to: CYAN Secure Web 1.4 and above NTLM helps to transparently synchronize user names and passwords of an Active Directory Domain and use them for authentication.
A Publication of FastSpring. FastSpring. Advertiser. QuickStart Guide. Ten Steps to Get Up and Running Quickly in the FastSpring Affiliate Program
A Publication of FastSpring FastSpring Advertiser QuickStart Guide Ten Steps to Get Up and Running Quickly in the FastSpring Affiliate Program Welcome to the FastSpring Affiliate Program (powered by Impact
Data Management in the Cloud: Limitations and Opportunities. Annies Ductan
Data Management in the Cloud: Limitations and Opportunities Annies Ductan Discussion Outline: Introduc)on Overview Vision of Cloud Compu8ng Managing Data in The Cloud Cloud Characteris8cs Data Management
Raspberry Pi Webserver
62 Int'l Conf. Embedded Systems and Applications ESA'15 Raspberry Pi Webserver Max Runia 1, Kanwalinderjit Gagneja 1 1 Department of Computer Science, Southern Oregon University, Ashland, OR, USA Abstract
Building Websites with e107
Building Websites with e107 A step by step tutorial to getting your e107 website up and running fast Tad Boomer Chapter 4 "Customizing the Look and Feel of Your Site" In this package, you will find: A
Installation Instructions
Installation Instructions 25 February 2014 SIAM AST Installation Instructions 2 Table of Contents Server Software Requirements... 3 Summary of the Installation Steps... 3 Application Access Levels... 3
Magento 1.3: PHP Developer's Guide
Magento 1.3: PHP Developer's Guide Jamie Huskisson Chapter No. 3 "Magento's Architecture" In this package, you will find: A Biography of the author of the book A preview chapter from the book, Chapter
SQL Server Setup for Assistant/Pro applications Compliance Information Systems
SQL Server Setup for Assistant/Pro applications Compliance Information Systems The following document covers the process of setting up the SQL Server databases for the Assistant/PRO software products form
OpenPro ERP Software Installation Guide 10061 Talbert Ave Suite 200 Fountain Valley, CA 92708 USA Phone 714-378-4600 Fax 714-964-1491
OpenPro ERP Software Installation Guide 10061 Talbert Ave Suite 200 Fountain Valley, CA 92708 USA Phone 714-378-4600 Fax 714-964-1491 www.openpro.com [email protected] OpenPro Installation of Software
Welcome to Collage (Draft v0.1)
Welcome to Collage (Draft v0.1) Table of Contents Welcome to Collage (Draft v0.1)... 1 Table of Contents... 1 Overview... 2 What is Collage?... 3 Getting started... 4 Searching for Images in Collage...
IT Support Tracking with Request Tracker (RT)
IT Support Tracking with Request Tracker (RT) Archibald Steiner AfNOG 2013 LUSAKA Overview What is RT? A bit of terminology Demonstration of the RT web interface Behind the scenes configuration options
Introduction. Just So You Know... PCI Can Be Difficult
Introduction For some organizations, the prospect of managing servers is daunting. Fortunately, traditional hosting companies offer an affordable alternative. Picking the right vendor and package is critial
StoreGrid Backup Server With MySQL As Backend Database:
StoreGrid Backup Server With MySQL As Backend Database: Installing and Configuring MySQL on Windows Overview StoreGrid now supports MySQL as a backend database to store all the clients' backup metadata
Using the Push Notifications Extension Part 1: Certificates and Setup
// tutorial Using the Push Notifications Extension Part 1: Certificates and Setup Version 1.0 This tutorial is the second part of our tutorials covering setting up and running the Push Notifications Native
Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues
Zend Server 4.0 Beta 2 Release Announcement Thank you for your participation in the Zend Server 4.0 beta program. Your involvement will help us ensure we best address your needs and deliver even higher
SETTING UP A LAMP SERVER REMOTELY
SETTING UP A LAMP SERVER REMOTELY It s been said a million times over Linux is awesome on servers! With over 60 per cent of the Web s servers gunning away on the mighty penguin, the robust, resilient,
STABLE & SECURE BANK lab writeup. Page 1 of 21
STABLE & SECURE BANK lab writeup 1 of 21 Penetrating an imaginary bank through real present-date security vulnerabilities PENTESTIT, a Russian Information Security company has launched its new, eighth
Content Management System
Content Management System XT-CMS INSTALL GUIDE Requirements The cms runs on PHP so the host/server it is intended to be run on should ideally be linux based with PHP 4.3 or above. A fresh install requires
This installation guide will help you install your chosen IceTheme Template with the Cloner Installer package.
Introduction This installation guide will help you install your chosen IceTheme Template with the Cloner Installer package. There are 2 ways of installing the theme: 1- Using the Clone Installer Package
Embedded Based Web Server for CMS and Automation System
Embedded Based Web Server for CMS and Automation System ISSN: 2278 909X All Rights Reserved 2014 IJARECE 1073 ABSTRACT This research deals with designing a Embedded Based Web Server for CMS and Automation
Tool-Assisted Knowledge to HL7 v3 Message Translation (TAMMP) Installation Guide December 23, 2009
Tool-Assisted Knowledge to HL7 v3 Message Translation (TAMMP) Installation Guide December 23, 2009 Richard Lyn [email protected] Jianwei Yang [email protected] Document Revision History Rev. Level Date
RDS Migration Tool Customer FAQ Updated 7/23/2015
RDS Migration Tool Customer FAQ Updated 7/23/2015 Amazon Web Services is now offering the Amazon RDS Migration Tool a powerful utility for migrating data with minimal downtime from on-premise and EC2-based
Install guide for Websphere 7.0
DOCUMENTATION Install guide for Websphere 7.0 Jahia EE v6.6.1.0 Jahia s next-generation, open source CMS stems from a widely acknowledged vision of enterprise application convergence web, document, search,
IBM Support Assistant v5. Review and hands-on by Joseph
IBM Support Assistant v5 Review and hands-on by Joseph What's new in v5 This new version is built on top of WebSphere application server community edition. It gives more flexible configurations Intuitive
