Open Dental

De gacq wiki
Revisión del 15:23 14 abr 2010 de Gacq (discusión | contribuciones) (Deshecha la edición 3008 de Adrianjackson21 (disc.))
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Introduction

License: GPL Developed in .NET (Current estimate on running Open Dental on Linux or Mac is December 2006 using Mono)


Installation tutorial

Using MySQL database on Linux

Distribution: Debian/Ubuntu

On Windows machine

cd C:\Program Files\MySQL\MySQL Server 5.0\bin
mysqldump --add-drop-table opendental > \opendental.sql

this puts all the data into a single file, including the db meta info

On Linux server

apt-get update
apt-get install mysql-server mysql-client apache2 phpmyadmin samba php5 libapache2-mod-php5

Samba configuration

/etc/samba/smb.conf

[global]
       workgroup = Consul
       server string = %h Consul (Samba %v)
       security = SHARE
       map to guest = Bad User
       passdb backend = tdbsam
       syslog = 0
       log file = /var/log/samba/log.%m
       max log size = 1000
       time server = Yes
       panic action = /usr/share/samba/panic-action %d
       invalid users = root

[OpenDentalData]
       comment = OpenDentalData
       path = /srv/OpenDental/OpenDentalData
       valid users = gacq
       read only = no
       create mask = 0640
       directory mask = 0750
smbpasswd gacq
mkdir -p /srv/OpenDental/OpenDentalData
chown gacq.users /srv/OpenDental/OpenDentalData
/etc/init.d/samba restart

MySQL configuration

SET PASSWORD FOR 'root'@ 'consul' = PASSWORD( '***********' ) 
CREATE DATABASE `consul01` ;
CREATE USER 'consul'@ '%' IDENTIFIED BY '********';
GRANT USAGE ON * . * TO 'consul'@ '%' IDENTIFIED BY '********' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0   MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
GRANT ALL PRIVILEGES ON `consul01` . * TO 'consul'@'%' WITH GRANT OPTION ;

Load database

mysql -u gacq -p opendental < opendental.sql

Enable remote connections at /etc/mysql/my.cnf commenting out

#bind-address           = 127.0.0.1
/etc/init.d/mysql restart

Apache configuration

Pointing Open Dental to new the server

  • Copy all file under C:\OpenDentalData to the new network share
  • Import database data
  • Change configuration parameter at OpenDent

References

Backups

Scripts

These scripts were made for Debian and Ubuntu

mysql-Hot_Backup-One_database

Backup one database in a compressed dump file. For a hot backup every 30 minutes put something like this in a new file in /etc/cron.d:

MAILTO=root
*/30 * * * *    root /usr/local/scripts/mysql-Hot_Backup-One_database <mysql_root_passwd> <OD_database> <directory>

and restart cron:

/etc/init.d/cron restart

backup-system-total-consul

Backup OD A-Z files, system config and a mySQL cold backup Configure the script and put it in your /etc/cron.daily

Misc

Download Manual

To download full user manual and images and recreate internal links structure for off line reading use:

wget -c -t 50 -T 5 -w 1 -e robots=off -r -k -I manual,images http://www.open-dent.com/manual/toc.html

Multiple servers

OpenDent to another server

  1. Make backup of existing files using the backup feature in the manage module. One of those USB Flash Drives work well.
  2. Install OD in new server. Be sure to install as Server (includes MySQL).
  3. Run OD on the new server and go to the Manage module. Select the backup/restore function.
  4. Restore from the backup.

Very easy. You could also do it by copying the database folder (Opendental) and the A-Z folders.

Multiple monitors

This is how it done

  1. Hardware. A new dual-head video card (or add another video card to your existing computer) and 2 monitors
  2. You know you can open 2 (or more) OD window by just clicking at OD icon one more time, then move that new OD window to the other monitor.


Errors

Security Policy

After build the installer when you try to install Open Dent in a clean PC you get the following error:

Microsoft .NET Framework
Application attempted to perform an operation not allowed by the security policy. To grant..........
......
......
Request for the permission of type
'System.Security.Permissions.FileIOPermission, mscorlib,
Version=2.0.0.0, Culture=neutral,
PublicKeyToken=.....' failed
Details:
************** Exception Text **************
System.Security.SecurityException: Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
 at System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet)
......
 at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
 at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
The action that failed was:
Demand
The type of the first permission that failed was:
System.Security.Permissions.FileIOPermission
The Zone of the assembly that failed was:
Internet

Resolutions:

  • You have to execute the installer from a local drive, See this page