I recently upgrade two systems from Deb 12 to 13, one of them has two weewx 
MariaDB DBs. While I did have various other things that needed fixing, the 
DBs themselves were fine.

In my case the DB upgrade was in-place, but I cannot think of a situation 
where a dump/restore would fail.
Are you using the default schema?

On Sunday, 12 October 2025 at 12:54:47 am UTC+10 Tom Keffer wrote:

> Most likely some change in MariaDB V11.8 vs 10.3.
>
> Using the command line interface, what do you get when you run the query
>
> show columns in weewx.archive;
>
>
> ?
>
>
> On Sat, Oct 11, 2025 at 7:44 AM meteo-melin <[email protected]> wrote:
>
>> Hello,
>> I am currently running weewx 4.8 on a raspberry pi with a remote mysql 
>> database server.
>> It is running smoothly except I need to change my database server and I 
>> can't do it.
>>
>> Here is what I did:
>> - Stopped weewx
>> - Dumped all mysql database from server using mysqldump
>> - Cloned users settings from old database server to the new server
>> - Imported all data and structure from the dump I made previously
>> - Changed server address in the weewx.conf (all other settings keept 
>> uncahnged).
>> - Tried to start weewx and got:
>> Oct 11 15:17:45 meteo.botrange systemd[1]: Starting LSB: weewx weather 
>> system...
>> Oct 11 15:17:48 meteo.botrange weewxd[24921]: weewx[24921] INFO __main__: 
>> Initializing weewx version 4.8.0
>> Oct 11 15:17:48 meteo.botrange weewxd[24921]: weewx[24921] INFO __main__: 
>> Using Python 3.7.3 (default, Jul 25 2020, 13:03:44)
>>                                               [GCC 8.3.0]
>> Oct 11 15:17:48 meteo.botrange weewxd[24921]: weewx[24921] INFO __main__: 
>> Platform Linux-5.10.17+-armv6l-with-debian-10.8
>> Oct 11 15:17:48 meteo.botrange weewxd[24921]: weewx[24921] INFO __main__: 
>> Locale is 'en_GB.UTF-8'
>> Oct 11 15:17:48 meteo.botrange weewxd[24921]: weewx[24921] INFO __main__: 
>> Using configuration file /home/weewx/weewx.conf
>> Oct 11 15:17:48 meteo.botrange weewxd[24921]: weewx[24921] INFO __main__: 
>> Debug is 0
>> Oct 11 15:17:48 meteo.botrange weewxd[24921]: weewx[24921] INFO __main__: 
>> PID file is /var/run/weewx.pid
>> Oct 11 15:17:48 meteo.botrange weewxd[24925]: weewx[24925] INFO 
>> weewx.engine: Loading station type Vantage (weewx.drivers.vantage)
>> Oct 11 15:17:48 meteo.botrange weewx[24911]: Starting weewx weather 
>> system: weewx.
>> Oct 11 15:17:48 meteo.botrange systemd[1]: Started LSB: weewx weather 
>> system.
>> Oct 11 15:17:49 meteo.botrange weewxd[24925]: weewx[24925] INFO 
>> weewx.engine: StdConvert target unit is 0x10
>> Oct 11 15:17:49 meteo.botrange weewxd[24925]: weewx[24925] INFO 
>> weewx.wxservices: StdWXCalculate will use data binding wx_binding
>> Oct 11 15:17:49 meteo.botrange sudo[24899]: pam_unix(sudo:session): 
>> session closed for user root
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__: Caught unrecoverable exception:
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****  [<class 'decimal.ConversionSyntax'>]
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****  Traceback (most recent call last):
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weewxd", line 147, in main
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      engine = weewx.engine.StdEngine(config_dict)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weewx/engine.py", line 93, in 
>> __init__
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      self.loadServices(config_dict)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weewx/engine.py", line 161, in 
>> loadServices
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      obj = weeutil.weeutil.get_object(svc)(self, 
>> config_dict)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weewx/wxservices.py", line 105, 
>> in __init__
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      initialize=True)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weewx/manager.py", line 597, in 
>> get_manager
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      self.manager_cache[data_binding] = 
>> open_manager(manager_dict, initialize)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weewx/manager.py", line 747, in 
>> open_manager
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      manager_dict['schema'])
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weewx/manager.py", line 164, in 
>> open_with_create
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      dbmanager = cls(connection, table_name=table_name, 
>> schema=schema)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weewx/manager.py", line 884, in 
>> __init__
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      super(DaySummaryManager, self).__init__(connection, 
>> table_name, schema)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weewx/manager.py", line 83, in 
>> __init__
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      self.sqlkeys = 
>> self.connection.columnsOf(self.table_name)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weedb/mysql.py", line 54, in 
>> guarded_fn
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      return fn(*args, **kwargs)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weedb/mysql.py", line 210, in 
>> columnsOf
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      column_list = [row[1] for row in 
>> self.genSchemaOf(table)]
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weedb/mysql.py", line 210, in 
>> <listcomp>
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      column_list = [row[1] for row in 
>> self.genSchemaOf(table)]
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File "/home/weewx/bin/weedb/mysql.py", line 183, in 
>> genSchemaOf
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      cursor.execute("""SHOW COLUMNS IN %s;""" % table)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File 
>> "/usr/lib/python3/dist-packages/MySQLdb/cursors.py", line 250, in execute
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      self.errorhandler(self, exc, value)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File 
>> "/usr/lib/python3/dist-packages/MySQLdb/connections.py", line 50, in 
>> defaulterrorhandler
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      raise errorvalue
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File 
>> "/usr/lib/python3/dist-packages/MySQLdb/cursors.py", line 247, in execute
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      res = self._query(query)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File 
>> "/usr/lib/python3/dist-packages/MySQLdb/cursors.py", line 412, in _query
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      self._post_get_result()
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File 
>> "/usr/lib/python3/dist-packages/MySQLdb/cursors.py", line 416, in 
>> _post_get_result
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      self._rows = self._fetch_row(0)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****    File 
>> "/usr/lib/python3/dist-packages/MySQLdb/cursors.py", line 384, in _fetch_row
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****      return self._result.fetch_row(size, 
>> self._fetch_type)
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****  decimal.InvalidOperation: [<class 
>> 'decimal.ConversionSyntax'>]
>> Oct 11 15:17:50 meteo.botrange weewxd[24925]: weewx[24925] CRITICAL 
>> __main__:     ****  Exiting.
>>
>> When I roll back to the other server (change server address) all works 
>> good.
>> How should I fix those errors?
>> Old sql server:  10.3.39-MariaDB-0+deb10u2 - Debian 10
>> New sql server:  11.8.3-MariaDB-0+deb13u1 from Debia
>>
>> Thanks
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "weewx-user" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> To view this discussion visit 
>> https://groups.google.com/d/msgid/weewx-user/1af74556-c95d-4c53-b912-76277ec21877n%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/weewx-user/1af74556-c95d-4c53-b912-76277ec21877n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/weewx-user/147896f9-e97e-4fea-857c-8108583bf53en%40googlegroups.com.

Reply via email to