1. 走一遍官网提示的安装过程
2. sudo useradd -r -s /bin/false mysql
在linux中创建一个用户,-r参数的意义是创建一个系统用户。
3. cd /usr/local
sudo ln -s full-path-to-mysql-VERSION-OS mysql
就是把我们下载下来的二进制文件的压缩包解压到/usr/local 目录下,然后手动为解压出的目录建立一个符号链接,连接的名字是 mysql
4. cd mysql
切换到安装包中的所有文件的目录
5. sudo mkdir mysql-files
这个目录暂时不知道是用来做什么的。
6. sudo chmod 750 mysql-files
为刚才创建的目录设置权限
7. sudo chown -R mysql:mysql .
将整个mysql所连接到的目录及其子目录设置所有者和所属组
8. sudo bin/mysqld --initialize --user=mysql
对数据库进行初始化,初始化之后包括但不限于在当前目录建立一个data文件,用于存放数据库。初始化完成之后会为数据库的root用户创建一个初始的密码。
9. sudo bin/mysql_ssl_rsa_setup
这个步骤是可选的。
10. chown -R root:root .
将整个mysql所连接到的目录及其子目录设置所有者和所属组
11. chown -R mysql:mysql data mysql-files
12. 现在安装算是完成了,如果要启动服务可以执行
support-files/mysql.server start
如果要停止,就是对应的stop
13. 接下来就是后续步骤了,可以把mysql目录下的 bin 目录放到PATH环境变量中。
14. 在执行第8步之后,程序为root用户设置了一个默认的密码,没记住,所以现在要重置root用户的密码。
先把mysqld_safe 相关的进程全部停了。
然后执行 。。。。。。。。。
相关介绍可以参考官网文档:https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html
1. 从官网下载下来的mysql是一个已经编译好的压缩包,尝试执行 mysqld 提示缺少 libnuma.so。
2. 安装 numactl 包
依赖包,libaio
执行mysqld_safe 的时候没报错,但是执行mysql的时候出现报错信息,报错信息:
mysql: error while loading shared libraries: libncurses.so.5
然而现在archlinux的ncurses包的版本已经到了6.0了,ok,给它建立一个符号链接,伪装版本。
sudo ln -s libncurses.so libncurses.so.5
然而再次执行mysql依然报错,提示file too short,应该是不兼容了。