[Trac] Converting from sqlite to mariadb/mysql

Bruce Dubbs <[email protected]> Thu, 5 Feb 2026 17:24:57 -0800 (PST)
Newsgroups gmane.comp.version-control.subversion.trac.general
Message-ID <[email protected]>
------=_Part_26422_341159459.1770341097900
Content-Type: multipart/alternative; 
	boundary="----=_Part_26423_1723552608.1770341097900"

------=_Part_26423_1723552608.1770341097900
Content-Type: text/plain; charset="UTF-8"

At the linuxfromscratch project we have been using Trac for a very long 
time.  The last time we updated Trac was in 2021 using the latest 
development system at that time.  Over the years our sqlite databases have 
grown quite large: 287M, 884M, and 642M respectively.

We have noticed some response problems and want to update to the latest 
Trac and convert to mariadb.

Doing some testing on a test server we installed python3.13, Trac-1.6, 
PyMySQL, and mariadb-11.8.5. We then copied a current trac.db to the test 
system and ran sqlite3mysql to copy the trac.db into mariadb.  

We can log into mariadb with  'mariadb -u tracuser -p trac_db' and all 
looks good.  We do have a symlink  /usr/bin/mysql -> mariadb

We then edited the  trac.ini file to read:

#[sqlite] 
#extensions = 
...
[trac]
...
#database = sqlite:db/trac.db 
#database = mysql://tracuser:password/trac_db?unix_socket=/run/mariadb/
    mariadb.sock 
database = mysql://tracuser:password@localhost/trac_db

but no matter what we try after restarting apache get the error message:

TracError: Unable to check for upgrade of trac.db.api.DatabaseManager: 
TracError: Unsupported database type "mysql"

What are we missing?

-- 
You received this message because you are subscribed to the Google Groups "Trac Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trac-users+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected]
To view this discussion visit https://groups.google.com/d/msgid/trac-users/04230c00-6dfc-40d6-9cb7-02f52912bff6n%40googlegroups.com.

------=_Part_26423_1723552608.1770341097900
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div>At the linuxfromscratch project we have been using Trac for a very lon=
g time.=C2=A0 The last time we updated Trac was in 2021 using the latest de=
velopment system at that time.=C2=A0 Over the years our sqlite databases ha=
ve grown quite large: 287M, 884M, and 642M respectively.</div><div><br /></=
div><div>We have noticed some response problems and want to update to the l=
atest Trac and convert to mariadb.</div><div><br /></div><div>Doing some te=
sting on a test server we installed  python3.13, Trac-1.6,  PyMySQL, and ma=
riadb-11.8.5.  We then copied a current  trac.db to the test system and ran=
=C2=A0sqlite3mysql=C2=A0to copy the trac.db into mariadb.=C2=A0=C2=A0</div>=
<div><br /></div><div>We can log into mariadb with=C2=A0
<span style=3D"font-family: monospace;"><span style=3D"color: rgb(0, 0, 0);=
 background-color: rgb(255, 255, 255);">'mariadb -u tracuser -p trac_db'=C2=
=A0</span></span>and all looks good.=C2=A0 We do have a symlink=C2=A0 /usr/=
bin/mysql -&gt; mariadb<span style=3D"font-family: monospace;"><br /></span=
></div><div><br /></div><div>We then edited the=C2=A0






<span style=3D"font-family: monospace;"><span style=3D"color: rgb(0, 0, 0);=
 background-color: rgb(255, 255, 255);">trac.ini</span>=C2=A0</span>file to=
 read<span style=3D"font-family: monospace;">:</span></div><div><span style=
=3D"font-family: monospace;"><span style=3D"font-weight: bold; color: rgb(8=
4, 255, 255); background-color: rgb(255, 255, 255);"><br /></span></span></=
div><div>#[sqlite] <br />#extensions =3D=C2=A0<br />...</div><div>[trac]</d=
iv><div>...</div><div>#database =3D sqlite:db/trac.db <br />#database =3D m=
ysql://tracuser:password/trac_db?unix_socket=3D/run/mariadb/</div><div>=C2=
=A0 =C2=A0 mariadb.sock <br />database =3D mysql://tracuser:password@localh=
ost/trac_db<span style=3D"font-family: monospace;"><br /></span></div><div>=
<br /></div><div>but no matter what we try after restarting apache get the =
error message:</div><div><br /></div><div>TracError: Unable to check for up=
grade of trac.db.api.DatabaseManager: TracError: Unsupported database type =
"mysql"</div><div><br /></div><div>What are we missing?</div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;Trac Users&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:trac-users+unsubscribe-/[email protected]">trac-use=
rs+unsubscribe-/[email protected]</a>.<br />
To view this discussion visit <a href=3D"https://groups.google.com/d/msgid/=
trac-users/04230c00-6dfc-40d6-9cb7-02f52912bff6n%40googlegroups.com?utm_med=
ium=3Demail&utm_source=3Dfooter">https://groups.google.com/d/msgid/trac-use=
rs/04230c00-6dfc-40d6-9cb7-02f52912bff6n%40googlegroups.com</a>.<br />

------=_Part_26423_1723552608.1770341097900--

------=_Part_26422_341159459.1770341097900--