尝试在 Amazon EC2 上升级 sqlite
Trying to upgrade sqlite on Amazon EC2
我需要 SQLite 最低版本 3.8 才能支持在 Amazon EC2 上安装 MediaWiki。 Amazon Linux 基于 CentOS,yum 存储库中可用的最新版本是 SQLite 3.7.17。
奇怪的是,sqlite.org 提供的下载不包括 64 位 Linux。有一个 github repo here 有一个预构建的 64 位版本,但是当我下载并解压缩它时,它只是 SQLite 的命令行版本。我把它放在 /usr/bin:
$ which sqlite3
/usr/bin/sqlite3
$ sqlite3 --version
sqlite3: /lib64/libtinfo.so.5: no version information available (required by sqlite3)
3.26.0 2018-12-01 12:34:55 bf8c1b2b7a5960c282e543b9c293686dccff272512d08865f4600fb58238b4f9
但是我的 MediaWiki 安装仍然提示我安装了 SQLite 3.7.17。当我自己写一个 PHP 单行测试时,我得到:
$ cat x.php
<?php
print_r(SQLite3::version());
?>
运行它:
$ php7 x.php
Array
(
[versionString] => 3.7.17
[versionNumber] => 3007017
)
我猜这是因为这些库:
$ sudo find / -name "libsqlite*"
/usr/lib64/libsqlite3.so.0
/usr/lib64/libsqlite3.so.0.8.6
我如何下载/重建/或以其他方式安装这些 SQLite3 库的更新版本?
我找到的最简单的选择是自己构建它。在亚马逊 Linux 版本 2 (Karoo) 上测试。
使用来自 here 的配置脚本 下载最新的源代码 。目前是:
curl https://www.sqlite.org/2020/sqlite-autoconf-3320300.tar.gz | tar xzf -
进入创建的目录并使用我们的系统相关选项创建 Makefile:
cd ./sqlite-autoconf-3320300 && ./configure
构建二进制文件
make
安装它
sudo make install
清理
cd .. && rm -r ./sqlite-autoconf-3320300
注意:如果没有合适的 RPM 包,这样做是很不理想的。如果你通过yum更新sqlite,你会覆盖你手动构建的版本。
我需要 SQLite 最低版本 3.8 才能支持在 Amazon EC2 上安装 MediaWiki。 Amazon Linux 基于 CentOS,yum 存储库中可用的最新版本是 SQLite 3.7.17。
奇怪的是,sqlite.org 提供的下载不包括 64 位 Linux。有一个 github repo here 有一个预构建的 64 位版本,但是当我下载并解压缩它时,它只是 SQLite 的命令行版本。我把它放在 /usr/bin:
$ which sqlite3
/usr/bin/sqlite3
$ sqlite3 --version
sqlite3: /lib64/libtinfo.so.5: no version information available (required by sqlite3)
3.26.0 2018-12-01 12:34:55 bf8c1b2b7a5960c282e543b9c293686dccff272512d08865f4600fb58238b4f9
但是我的 MediaWiki 安装仍然提示我安装了 SQLite 3.7.17。当我自己写一个 PHP 单行测试时,我得到:
$ cat x.php
<?php
print_r(SQLite3::version());
?>
运行它:
$ php7 x.php
Array
(
[versionString] => 3.7.17
[versionNumber] => 3007017
)
我猜这是因为这些库:
$ sudo find / -name "libsqlite*"
/usr/lib64/libsqlite3.so.0
/usr/lib64/libsqlite3.so.0.8.6
我如何下载/重建/或以其他方式安装这些 SQLite3 库的更新版本?
我找到的最简单的选择是自己构建它。在亚马逊 Linux 版本 2 (Karoo) 上测试。
使用来自 here 的配置脚本 下载最新的源代码 。目前是:
curl https://www.sqlite.org/2020/sqlite-autoconf-3320300.tar.gz | tar xzf -
进入创建的目录并使用我们的系统相关选项创建 Makefile:
cd ./sqlite-autoconf-3320300 && ./configure
构建二进制文件
make
安装它
sudo make install
清理
cd .. && rm -r ./sqlite-autoconf-3320300
注意:如果没有合适的 RPM 包,这样做是很不理想的。如果你通过yum更新sqlite,你会覆盖你手动构建的版本。