Find Jobs
Hire Freelancers

Sync Local SQLite DB w/ Online mySQL DB

$250-750 USD

Closed
Posted almost 10 years ago

$250-750 USD

Paid on delivery
---Project Description--- I need a PHP script that securely and quickly syncs the database structure and data of a local SQLite DB with an online mySQL DB. This project is for the online script only. I have a downloadable software application (known as the 'software' from here on) that creates and manages a local SQLite DB. The software is capable of pulling data from the SQLite DB in any format (XML, SQL etc...) and send it to the server for processing and input into the online mySQL DB. The local SQLite DB can be modified by the software and the online mySQL database can be modified by another source as well. So they both need to stay in sync with each other. In addition, there can be multiple local SQLite DB's on various computers since the software can be used on multiple computers. ----Technical Details---- --Syncing-- 1. The database will consist of 2 - 4 tables. The software will check to see if the database has been created online. If not, it will create the database online based on a table structure provided. 2. Once we know the database is available online the software will ask the database for any new entries. To get new entries, each table has a 'dateCreated' column. The software will ask the online DB for all entries after a specified date (stored within the software). 3. Once the software has the new online entries, it will send the new local entries it has to the online DB. The software will have a column labeled 'modified' that knows whether or not it has synced this column with the online DB. So once it sends the local data to the server, the server needs to let the software know if the data has been successfully entered online. If it has, the software will set the modified column accordingly. 4. For deleting records there will be a table with the following columns; UUID, tableName, dateDeleted The server will store the deleted UUID, which table it is from and the date deleted so that the local DB can download this data and delete the appropriate rows. Likewise, the local DB will have the same details that will be synced with the online DB. 5. (once the above is completed) There also needs to be a way for the software to communicate **securely** with the web server to update the table structure if needed. For example, it needs to be able to; a) add a new column of a specified type (so send the column name and type along with the table it belongs to and the default value. The online version should communicate a success or failure) b) add data to a specific column c) possibly other additions Note: The local sqlite DB's never have to have their structure changed via syncing. Any structure changes will be a one way sync from the local DB to the online DB. --Data Integrity-- In order to ensure the integrity of the data, we rely on a UUID column instead of an integer primary key. That means that since there are multiple local DB sources, it doesn't matter when the data is added to the online mysql source. --Error Codes-- Because the server needs to sync with a local software, the server should have standardized error codes that is sent to the software when we have any errors that can then be shown to the user. So instead of using error strings, we simply send a set of standardized error codes depending if something went wrong. In addition to the error code, there needs to be some kind of log with additional details such as an error in the SQL, etc... --Security-- We want to make sure that only communication from the software is processed by the online script. All communication should be sent with a hash that is made up of the data and a secret code that must be validated before any data is processed. In addition, the script should only accept data from a specific HTTP header. The script should work with both SSL and non SSL connections. I would also discuss security implementations with the chosen developer to make sure communication comes from the current sources only.
Project ID: 5985036

About the project

18 proposals
Remote project
Active 10 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
18 freelancers are bidding on average $669 USD for this job
User Avatar
Hi I work towards providing reliable, relevant and robust IT solutions at most competitive prices to my customers. I ensure 100% customer satisfaction so lets start Thanks
$515 USD in 15 days
4.9 (451 reviews)
8.2
8.2
User Avatar
One question: you asked for a php software, that means it is on the web server side and is reading/writing to the MySql DB. You didn't asked for the corresponding client side component reading/writing to the SQLLite DB on each computer: does this mean that the software you already have on the SQLite side is sufficient for all operations on that side? (exporting data and structures, imprting data from MySql). Or else, do you need two distinct software modeules, one in php on the web server side and the other on "local" computers (presumably a Windows compatible software)? My profile: 30+ years experience in ICT. Most of last years spent on web 2.0 applications, mainly with MySql+php technologies.
$570 USD in 6 days
5.0 (47 reviews)
6.5
6.5
User Avatar
Sir , I have huge experice in PHP as well as Database , I can provide you long term service . Please give me the chance i will return you quality work Thx!
$750 USD in 10 days
5.0 (31 reviews)
6.1
6.1
User Avatar
Hi, I have gone through your requirement and attachment as well.I am a DBA at CMM5 Level company since August 2010.I am working on MySql,SQL Server,Oracle database, I can do your job confidently. But, as per your requirement, what I understand that, we need to discuss and finalize the development procedure first and then to proceed. And as you have a question with security, I think SOAP will the best approach. Please revert as we can discuss and move for further proceedings.
$621 USD in 10 days
4.2 (44 reviews)
5.7
5.7
User Avatar
Hi, I'm ready to do it. Great knowledge on php,mysql. Best Regards
$444 USD in 10 days
5.0 (15 reviews)
3.6
3.6
User Avatar
Hi, I'm a professional DataBase Administrator and freelance website developper. I can do your job very efficiently. Before i take your project at the specified price, i need the following informations to be sure i correctly estimates my time : What wind of web hosting do you have for online databases ? The software : Is it a well known software with online documentation or a specific development. To adapt perfectly the online script whithout unproductive trial end errors, i need to know exactly the possible outputs of the software. There are different options for security too that we can discuss. Sincerely yours, Eric
$700 USD in 10 days
5.0 (1 review)
2.6
2.6
User Avatar
Hi, I have 4 year of experience in Java and database development. For one of my client we had created application to sync oracle with mysql online. That was supporting table data sync, both database export import etc. But it was under NDA so I can not show you its working. If you are interested. I can start working on demo. to sync tables in my local. I will prefer if you can give me access to test mysql database, or even if possible sqllite db. So I can show you how only one software will be enough to complete your task. Let me know if further discussion is required.
$553 USD in 5 days
4.9 (6 reviews)
2.8
2.8
User Avatar
you do you just one way sync? i suggest to use auth process additional to data encryption. and develop whose script on php+curl with ssl/non-ssl support. p.s. i'm newbie on this website but already in top on another freelancers website. thanks!
$500 USD in 3 days
0.0 (0 reviews)
0.0
0.0
User Avatar
Hi, im expert in data integration tools. I have more than 10 years of experience in databases. I can make your project quickly and efficiently. I have a proccess like you need running in my ovh server. Regards
$555 USD in 3 days
0.0 (0 reviews)
0.0
0.0
User Avatar
I currently work maintaining a system that I developed on Control of Oil Royalties in Mendoza Province Government with php. I also work as DBA Oracle 10GI/11GI in migration of billing and collection system Electrical Company -INDRA- for the country PERU. Previously I was DBA in General Revenue-ATM- for several years. Perform various systems in Visual Basic 6 with Crystal Report, accessing database Access of Office other Oracle and postgres. I Managed and Installed UNIX servers of SOLARIS and AIX . I have also developed on LINUX servers. Until February 2005 I worked for IBM through from Consult ITP, turning the system of Metrogas that was in MVS with COBOL/Cics/db2 and JCL taking it to AIX / CICS / Oracle and shell scripts. I previously worked as Supervisor in Department of Systems Development of Revenue Department in Mendoza Province in Tax System. Powered by Designer and Developer 2000 of ORCLE, User-Exits and several programs in Pro C. I have developed various systems in cobol, ACUCOBOL, cobol / cics with DB2, VSAM and PL1 on equipment Main Frame. As also in RM and microfocus cobol on Unix and Personal Computer. The developments we have performed integrating different groups, some of them leading and other as an individual consultant. kind regards. kind regards. Rolando Calderón
$777 USD in 10 days
0.0 (0 reviews)
0.0
0.0
User Avatar
Hi, i'm currently working on my own small business to business company in developing software and linux servers setup/manteinance. We have a little team of programmers and we are currently working on a CRM system made in Qt/C++ wich uses MySQL as Server DB and we replicate some tables of the MySQL server to local in memory client SQLITE DB for caching purposes. When the program opens it replicates some tables of the MySQL DB to local :memory: SQLITE db and then permite the user to modify the db to update the mysql on closing/loging out. Thank you in advance Mariano
$555 USD in 3 days
0.0 (0 reviews)
0.0
0.0

About the client

Flag of CANADA
Thornhill, Canada
5.0
2
Member since Mar 7, 2013

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.