1./etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql/mysql-8.0
socket=/var/lib/mysql/mysql.sock
2.初始化mysql
/usr/local/mysql/mysql-8.0/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/mysql-8.0 --datadir=/usr/local/mysql/data/
输出中有mysql的初始密码,记下。
3.创建sock文件夹
即/etc/my.cnf中的socket=/var/lib/mysql/mysql.sock,看下有无/var/lib/mysql文件夹,并赋权,
chown -R mysql:mysql /var/lib/mysql
4.创建mysql命令链接
ln -s /usr/local/mysql/mysql-8.0/bin/mysql /usr/bin
5.启动服务
/usr/local/mysql/mysql-8.0/support-files/mysql.server start
启动时会出现一些报错,我们一一解决:
① 文件夹不存在
mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.
ERROR! The server quit without updating PID file (/usr/local/mysql/data/qh-starrocks-01.pid)
那就创建文件夹并赋权。
chown mysql:mysql /var/log/mariadb/mariadb.log
这次离线安装到这就成功了。
还有可能在启动时报其他错误,这次一起整理下:
② Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
只需要设置下软连接,就可以了。
/var/lib/mysql/mysql.sock 文件所在目录
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
注:/tmp目录下会定时删除文件,所以设置一下mysql.sock文件不被删除,vim /usr/lib/tmpfiles.d/tmp.conf
,加上X /tmp/mysql.sock