Due to a change of ISP, the IP address of my combined frontend and backend had to change from 192.168.1.26 to 192.168.2.26. When I run mythtv-setup, instead of the setup pages indicated in the Wiki (which would allow me to do all aspects of setup), I get a page that announces that the DB failed to start. I press on the "Setup" button, and it allows me to change the IP address of the Database. I then save the changes and exit. This then starts the search for the database over again, and brings me back to the same error message. Restarting Ubuntu and then running mythtv-setup repeats the above result. The new address for the database is shown with the correct value in the setup page, and the correct address is found in /home/bill/.mythtv/config.xml. Realizing that startup will happen sometimes with "bill" and sometimes with "mythtv" as the user name, I changed /home/mythtv/.mythtv/config.xml to also have the correct address. I get exactly the same result: "The database failed to start".
So, two questions:
1) How can I ensure that all the places where the new address is needed have been changed?
2) How can I get mythtv-setup to go to the right setup screens?
You need check that the DB server is listening on either localhost or the new static IP4.
This may be different for mariadb but..
That's in the /etc/mysql/mysql.conf.d/mysqld.cnf or similar
bind-address = 127.0.0.1
Just because its FOSS.. the syntax of these files changes regularly & between mariadb & mysql & month of year, so confirm with apps home page or MythTV wiki.
For combined BE FE then DB server can just set to listen on localhost & be IP address independent.
And I recall that there were MythTV DB table values dependent on IP values (could be historic).. some "host" settings may be lost.
The MythTV wiki has info about this under database restore & backup.
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: activating (start) since Thu 2023-06-01 16:51:39 EDT; 2s ago
Process: 153748 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 153756 (mysqld)
Status: "Server startup in progress"
Tasks: 33 (limit: 9338)
Memory: 373.6M
CGroup: /system.slice/mysql.service
└─153756 /usr/sbin/mysqld
Jun 01 16:51:39 Acacia systemd[1]: Starting MySQL Community Server...
Jun 01 16:51:45 Acacia systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
Jun 01 16:51:45 Acacia systemd[1]: mysql.service: Failed with result 'exit-code'.
Jun 01 16:51:45 Acacia systemd[1]: Failed to start MySQL Community Server.
Jun 01 16:51:46 Acacia systemd[1]: mysql.service: Scheduled restart job, restart counter is at 2996.
Jun 01 16:51:46 Acacia systemd[1]: Stopped MySQL Community Server.
Jun 01 16:51:46 Acacia systemd[1]: Starting MySQL Community Server...
No, it indicates that "something" is listening on port 33060.
However, I found the problem: /etc/mysql/conf.d/mythtv.cnf was still binding to 192.168.1.26. Changing the bind to 192.168.2.26 allowed me to get past the "database not starting" error page, and brought me to the expected set of setup pages. When I exited setup, and permitted startup of the backend, the netstat command showed the following:
Based on creation dates on my desktop PC..
I think the conf.d/ is the old subfolder & now it uses mysql.conf.d/ because...
And then it uses both to be safe..