Rebooting a FileMaker Server
Short Version:
- Use the FileMaker Server Admin Console to check the status of the Server.
- If there are no clients connected, you can proceed to “Close All Databases”.
- If there ARE clients connected, use the admin console to disconnect them.
- Once all clients are disconneted and all databases are closed (not hosted), you can reboot the server machine.
Long Version:
It can be dangerous to reboot a FileMaker Server without properly closing all the databases first. If you simply tell the operating system to reboot, it will tell the FileMaker Server service to shutdown. The FileMaker Server service will tell the Database Engine to stop. The Database Engine will attempt to close all the open databases cleanly. If no one is using a database at the time, this should be a fairly quick process (depending on the size of the database). If someone is using the database, the Database Engine will first send a signal to that client letting them know that the database will be closed in 2 minutes. After that 2 minutes the client will be automatically disconnected. Sometimes the disconnecting process can take a while if the client is in the process of modifying multiple records across multiple tables. There could also be a scheduled task that is running and not paying attention to this notice. There could be Data API connections that are not listening for this notice. There could be new clients connecting (from any of these sources) after the 2 minute warning is given but before the database is closed. Ultimately, the Database Engine will keep the database open until it can properly close all connections and safely close the database. This could take a few seconds or a few minutes. If the operating system is not patient, it could decide to kill the FileMaker Server service so it can continue with the reboot. This leaves any open databases in an unstable state. When the FileMaker Server service attempts to open these databases next time, it will attempt to scan them for errors. This can take a long time as well. If enough corruption is found, the database simply won’t open until it is repaired. This repair process is done by a person and can take a long time and may even result in a previous backup being restored and any changes made since that backup being lost.
The safer solution to rebooting a FileMaker Server is to login to the Admin Console and manually close all open databases. The Admin Console is accessed via a web browser.
https://server.name/admin-console/
Replace server.name with the name of your server and you should be prompted to login. Once logged in, you will be on the Dashboard.
Click on the Databases tab to see all the databases hosted on your server.
On the right side you will see a list of currently connected Clients.
If there are no clients connected, you are safe to close all the databases. If you do see clients connected, you will need to decide how to proceed. You can use the information provided in the Clients list to determine who is connected and what database they are using. You can use this screen to send a message to a single or multiple clients. Or you can simply choose to disconnect them. It can be helpful to pay attention to the Sign-in column. Clients that have been signed in for days are less likely to be actively using the database. Clients that have been signed in for a few minutes or hours are more likely to be actively using the database.
You can close databases one at a time by accessing the menu to the right of the database on the left side.
Clicking Close will attempt to close the database. If there are no client connected, it will start closing immediately, When it is closed, the icon to the left of the database name will change.
If there are clients connected, you will be prompted to enter an optional message to send them along with a delay for when they will be automatically disconnected.
The client will get a pop-up notification with the message and a notice that the file will be closed automatically in a few seconds if they do nothing. The user can cancel that notification and continue working in the file if they choose. The delay time provided will not be relayed to the user so it may be beneficial to include a message instead. After the delay time, the server will automatically try to close the file. During this waiting time, the icon to the left of the database name will look like this.
If you want to close all databases at the same time, you can use the menu to the right of All Databases on the left side.
You can verify all the databases are closed by looking at the icons or going back to the Dashboard and making note of how many Connections and Hosted Databases there are.
This would indicate the FileMaker Server has closed all databases and it is safe to reboot the server.
After the server has rebooted, The FileMaker Server service should attempt to start up automatically and open all available databases. You can verify this by returning to the Admin Console. If the Admin Console is accessed before the Database Server is running, you make see a message like this.
You can refresh the page in a few seconds or click on the button to start the database server. Once the database server is running, verify that all your databases are opened.