安装前说明:
安装时间为2019-04-27,系统已经更新到最新.
1 首先安装mysql
sudo pacman -S mysql
2 启动MySQL服务
systemctl start mysqld
3 查看启动结果
systemctl status mysqld
● mysqld.service - MySQL database server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; disabled; vendor preset: disabled)
Active: active (running) since Sat 2019-04-27 12:00:08 CST; 7s ago
Process: 16575 ExecStartPost=/usr/bin/mysqld-post (code=exited, status=0/SUCCESS)
Main PID: 16574 (mysqld)
Tasks: 39 (limit: 4915)
Memory: 386.6M
CGroup: /system.slice/mysqld.service
└─16574 /usr/bin/mysqld --pid-file=/run/mysqld/mysqld.pid
4月 27 12:00:06 ThinkPad systemd[1]: Starting MySQL database server...
4月 27 12:00:07 ThinkPad mysqld[16574]: 2019-04-27T04:00:07.248729Z 0 [Warning] [MY-010915] [Server] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO>
4月 27 12:00:07 ThinkPad mysqld[16574]: 2019-04-27T04:00:07.248789Z 0 [System] [MY-010116] [Server] /usr/bin/mysqld (mysqld 8.0.15) starting as process 16574
4月 27 12:00:07 ThinkPad mysqld[16574]: 2019-04-27T04:00:07.731127Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
4月 27 12:00:07 ThinkPad mysqld[16574]: 2019-04-27T04:00:07.768218Z 0 [System] [MY-010931] [Server] /usr/bin/mysqld: ready for connections. Version: '8.0.15' socket:>
4月 27 12:00:07 ThinkPad mysqld[16574]: 2019-04-27T04:00:07.826682Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Socket: '/run/mysqld/mysqlx.sock' >
4月 27 12:00:08 ThinkPad systemd[1]: Started MySQL database server.
遇到的问题
1 找不到 libicuuc.so.63 libicui18n.so.63 libicudata.so.63
错误信息如下:
● mysqld.service - MySQL database server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; disabled; vendor preset: disabled)
Active: activating (start-post) (Result: exit-code) since Sat 2019-04-27 11:32:57 CST; 1min 13s ago
Process: 2310 ExecStart=/usr/bin/mysqld --pid-file=/run/mysqld/mysqld.pid (code=exited, status=127)
Main PID: 2310 (code=exited, status=127); Control PID: 2311 (mysqld-post)
Tasks: 2 (limit: 4915)
Memory: 3.7M
CGroup: /system.slice/mysqld.service
├─2311 /bin/sh /usr/bin/mysqld-post
└─4872 sleep 1
4月 27 11:32:57 ThinkPad systemd[1]: Starting MySQL database server...
4月 27 11:32:57 ThinkPad mysqld[2310]: /usr/bin/mysqld: error while loading shared libraries: libicuuc.so.63: ca>
4月 27 11:32:57 ThinkPad systemd[1]: mysqld.service: Main process exited, code=exited, status=127/n/a
错误原因 : 系统升级到最新之后所依赖的icu包已经更新到64 ,而mysql需要用到的是63版本.
解决办法
下载http://download.icu-project.org/files/icu4c/63.1/icu4c-63_1-src.tgz
解压之后编译(建议最好不要安装,可能会出现其他问题)
cd source
./configure --prefix=/usr
make
等待编译完成之后 进入 source/lib目录
拷贝 libicuuc.so.63 libicui18n.so.63 libicudata.so.63文件到/usr/lib/目录下即可
cp libicuuc.so.63* /usr/lib
cp libicui18n.so.63* /usr/lib
cp libicudata.so.63* /usr/lib
2 启动报错
[Server] Failed to find valid data directory.
[Server] Data Dictionary initialization failed.
解决方法
cd /var/lib/mysql/
rm *
mysqld --initialize-insecure
3 启动报错
4月 27 11:55:35 ThinkPad mysqld[14590]: 2019-04-27T03:55:35.780915Z 1 [ERROR] [MY-012271] [InnoDB] The innodb_system data file 'ibdata1' must be writable
4月 27 11:55:35 ThinkPad mysqld[14590]: 2019-04-27T03:55:35.780926Z 1 [ERROR] [MY-012278] [InnoDB] The innodb_system data file 'ibdata1' must be writable
4月 27 11:55:35 ThinkPad mysqld[14590]: 2019-04-27T03:55:35.780943Z 1 [ERROR] [MY-010334] [Server] Failed to initialize DD Storage Engine
4月 27 11:55:35 ThinkPad mysqld[14590]: 2019-04-27T03:55:35.781095Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
解决方法
chown -R mysql:mysql /usr/lib/mysql
再次启动mysql服务
systemctl start mysqld