手机编译安装mysql_闲置一加1手机编译Mysql8.0.11安装Java环境跑爬虫

前因: 有一闲置一加1手机, 看很多大神在手机上跑Linux, 玩各种炫酷操作, 我也要玩玩

直接安装MySQL, MariaDB报错, 才尝试编译的, 还真的编译成功了, 就记录下, 写给爱折腾的人

手机配置: 一加1 64G黑, CPU 4核心, 内存 3G, 比阿里云低配的配置高多了, 就利用起来

建议在不用的手机上测试, 玩废不负责的

环境准备:

0, 以下1,2,3操作有变砖风险, 请谨慎操作, **其他方式开始root权限也行, 可跳过1,2,3**, 我用的底包是氢OS

1, 刷 twrp recovery( 最新版TWRP 3.2.1-0 ), 其他方式达到这个目的也可以

2, 刷LineageOS, 还是选择最新版lineage-15.1-20180625-nightly-bacon-signed.zip

3, 刷su插件addonsu-15.1-arm-signed.zip

4, 开启su: 设置 --> 系统 --> 关于手机 --> 版本号( 点击 ), 提示已开启 "开发者选项", 返回上一级 --> 开发者选项 --> Root授权 --> 仅限于应用

5, 安装软件: linuxdeploy 支持多种linux环境, juicessh 手机版SSH连接工具, 最后使用, 这两个自行下载安装, 第一个github有打包好的

6, 使用linuxdeploy初始化环境, 我选择的是Ubuntu 18.04, 这个不清楚怎么弄的, 自行度娘

下载地址:

以上提供的是一加1手机所使用版本, 其他手机不能使用, 请去官网找对应型号

安装所需的软件并编译

0, 启动Ubuntu, Win中使用SecureCRT( 其他工具也一样 )连接, IP 在 linuxdeploy界面中可以看到

1, 安装编译MySQL所需依赖

sudo apt install git cmake make gcc g++ libssl-dev libbz2-dev libreadline-dev libncurses-dev p7zip wget

2, 下载mysql源码,并编译, 选择的源码是: Generic Linux (Architecture Independent), Compressed TAR Archive 8.0.11

cd ~

mkdir src & cd src

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.11.tar.gz

tar zxvf mysql-8.0.11.tar.gz

cd mysql-8.0.11

mkdir build & cd build

# 生成Makefile, 由于mysql8.0.11依赖boost1.66.0, apt里面没有这个版本, 这里使用编译时自动下载的方式, 也可以下载好boost_1_66_0.tar.gz放入/home/android/src目录, 生成时就不用在下载, 会自动校验并解压好, 如果提示还少依赖, 根据提示安装即可

cmake .. -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/home/android/src

# 开始编译, 我这里编译使用的近5个小时, 时间太久, 请5小时后再回来

make

# 安装到指定路径, 你也可以默认安装 make install

make DESTDIR=/home/android/db/mysql instal

以上编译安装完成, 最终mysqld的路径为: /home/android/db/mysql/usr/local/mysql/bin/mysqld, 这个层级太深了, 修改最终路径为/home/android/db/mysql/bin/mysqld, 命令如下:

cd ~/db/mysql

# 请注意最后的一个 "."

mv usr/local/mysql/* .

rm -rf usr

ls # 出现以下内容说明成功

LICENSE LICENSE-test README README-test bin docs include lib man mysql-test share support-files

初始化数据并启动

1, 初始化编译好的MySQL

cd ~/db/mysql

# 查看路径并记录

pwd # 得到结果: /home/android/db/mysql

# 这里一定要使用sudo, 不然初始化不成功

sudo bin/mysqld --initialize --basedir=/home/android/db/mysql --datadir=/home/android/db/mysql/data

# 观察日志,密码在日志里面, 如下:

# [Note] [MY-010454] [Server] A temporary password is generated for root[@localhost](https://my.oschina.net/u/570656): vwnj0i*VRrtd

# vwnj0i*VRrtd 就是初化密码, 必须记关, 首次登陆需要, 然后修改密码即可

# 配置my.ini, 内容较多在下面

# 由于是使用sudo初始化的, 需要把data目录权限修改为当前用户

sudo chown -R android:android data

# 启动

bin/mysqld --defaults-file=my.ini

# 出现如下日志, 说明启动成功

[Server] /home/android/db/mysql/bin/mysqld (mysqld 8.0.11) starting as process 10624 # 10624是进程号, 每个系统不一样

2, 测试数据库

# 新建一个SSH接连

cd ~/db/mysql

bin/mysql -uroot -p

# 输入初始化数据库时的密码

# 修改密码, 不然无法执行任何命令

ALTER USER 'root'@'localhost' IDENTIFIED BY '你要设置的密码';

# 查看默认数据库

show databases;

# 得到以如下结果

+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| performance_schema |

| sys |

+--------------------+

4 rows in set (0.02 sec)

以上测试完成, 数据库没有问题, 可以把启动命令写入脚本, MySQL bin目录配置PATH, 这里不演示, 自行解决

3, my.ini文件内容

[client]

port = 3306

default-character-set=utf8mb4

[mysql]

no-auto-rehash

default-character-set=utf8mb4

[mysqld]

port = 3306

basedir = /home/android/db/mysql

datadir = /home/android/db/mysql/data

character-set-server=utf8mb4

配置Java环境

cd ~

mkdir dev & cd dev

# 下载好的jdk-8u171-linux-arm32-vfp-hflt.tar.gz文件使用WinSCP上传到手机~/dev目录

tar zxvf jdk-8u171-linux-arm32-vfp-hflt.tar.gz

# 会自动解压到jdk1.8.0_171目录

cd jdk1.8.0_171

pwd

# 得到 /home/android/dev/jdk1.8.0_171

# 配置JAVA_HOME

vi ~/bashrc

# 在文件结尾加入如下命令

export JAVA_HOME=/home/android/dev/jdk1.8.0_171

export PATH=$JAVA_HOME/bin:$PATH

# 保存退出

# 使用环境变量升效

source ~/bashrc

# 测试是否成功

java -version

# 输出版本号即成功

Java连数据库测试, 爬虫

本文重点是MySQL编译, 已测试成功, Java环境也已OK, 我就不放Java的爬虫了, 完全OJBK

PS: 主要是懒

放几个图说明成功了

手机编译安装mysql_闲置一加1手机编译Mysql8.0.11安装Java环境跑爬虫_第1张图片

手机编译安装mysql_闲置一加1手机编译Mysql8.0.11安装Java环境跑爬虫_第2张图片

使用的是 juicessh 手机SSH连接工具

手机编译安装mysql_闲置一加1手机编译Mysql8.0.11安装Java环境跑爬虫_第3张图片

手机编译安装mysql_闲置一加1手机编译Mysql8.0.11安装Java环境跑爬虫_第4张图片

手机编译安装mysql_闲置一加1手机编译Mysql8.0.11安装Java环境跑爬虫_第5张图片

能坚持看完, 绝对真爱, 希望能对你有帮助

你可能感兴趣的:(手机编译安装mysql)