一、前提
凝思的操作系统版本:
root@linx:/var/lib/mysql-files# cat /etc/issue
Linx 6.0.80 2019-11-26 \n \l
复制代码
1、卸载mysql
找出所有mysql目录,以及删除一些配置文件。
find / -name mysql
rm -rf /etc/my.cnf
2、安装选型
linux 标准版
二、安装步骤
1、解压文件重命名
oot@linx:/opt/package# ls
jdk-8u251-linux-x64.tar.gz mysql-8.0.22-linux-glibc2.12-x86_64.tar nginx-1.18.0.tar.gz node-v14.15.0-linux-x64.tar.xz redis-6.0.8.tar.gz
root@linx:/opt/package# tar -xvf mysql-8.0.22-linux-glibc2.12-x86_64.tar -C /opt/sofeware/
复制代码
root@linx:/opt/sofeware# mv mysql-8.0.22-linux-glibc2.12-x86_64/ mysql8
复制代码
2、创建mysql组合mysql(如果有跳过)
groupadd mysql
useradd -r -g mysql mysql
复制代码
3、创建data文件夹存放数据,然后把整个mysql文件授权给mysql用户
root@linx:/opt/sofeware/mysql8# mkdir data
root@linx:/opt/sofeware/mysql8# chown -R mysql:mysql ./
复制代码
4、初始化mysql
此时会生成一个初始化密码,记录下来,后面要用。如果没用显示密码,则去你配置的日志文件里面查看,里面会有。
bin/mysqld --initialize --user=mysql --basedir=/opt/sofeware/mysql8 --datadir=/opt/sofeware/mysql8/data
复制代码
5、设置my.cnf配置文件
并配置权限。
6、my.cnf
[client]
port=3306
socket=/opt/sofeware/mysql8/data/mysql.sock
[mysqld]
basedir= /opt/sofeware/mysql8
datadir= /opt/sofeware/mysql8/data
socket= /opt/sofeware/mysql8/data/mysql.sock
log-error= /opt/sofeware/mysql8/data/error.log
pid-file= /opt/sofeware/mysql8/data/mysql.pid
#default-authentication-plugin = mysql_native_password
复制代码
7、设置开机自启动
进入support-files 目录
root@linx:/opt/sofeware/mysql8/support-files# cp mysql.server /etc/init.d/mysql
root@linx:/opt/sofeware/mysql8/support-files# chmod +x /etc/init.d/mysql
复制代码
8、注册服务
# chkconfig --add mysql
复制代码
如果没有命令,则需要处理chkconfig,凝思有
# rpm -aq |grep chkconfig
# export PATH=/sbin:$PATH
# chkconfig
# echo $PATH
# PATH="$PATH":/sbin
# echo $PATH
复制代码
9、etc/ld.so.conf的配置路径
# vim /etc/ld.so.conf
添加如下内容:
/opt/sofeware/mysql8/lib
复制代码
10、配置环境变量
# vim /etc/profile
# source /etc/profile
添加如下内容:
#MYSQL ENVIRONMENT
export PATH=$PATH:/opt/sofeware/mysql8/bin:/opt/sofeware/mysql8/lib
复制代码
11、启动服务
root@linx:/opt/sofeware/mysql8/data# /etc/init.d/mysql start
复制代码
如果发现服务启动不来,则看my.cnf 里面是否配置了client的配置,而且socket的文件路径必须存在,且client和mysqld的路径一致。
另外如果想重新初始化mysql,必须先把data文件清空再来。
最后启动成功!!
root@linx:/var/lib/mysql-files# /etc/init.d/mysql start
[ ok ] Starting mysql (via systemctl): mysql.service.
root@linx:/var/lib/mysql-files# ps -ef|grep mysql
root 1851 1 0 21:57 ? 00:00:00 /bin/sh /opt/sofeware/mysql8/bin/mysqld_safe --datadir=/opt/sofeware/mysql8/data --pid-file=/opt/sofeware/mysql8/data/mysql.pid
mysql 2015 1851 8 21:57 ? 00:00:00 /opt/sofeware/mysql8/bin/mysqld --basedir=/opt/sofeware/mysql8 --datadir=/opt/sofeware/mysql8/data --plugin-dir=/opt/sofeware/mysql8/lib/plugin --user=mysql --log-error=/opt/sofeware/mysql8/data/error.log --pid-file=/opt/sofeware/mysql8/data/mysql.pid --socket=/opt/sofeware/mysql8/data/mysql.sock
root 2086 1316 0 21:57 pts/0 00:00:00 grep mysql
root@linx:/var/lib/mysql-files# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.22
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> alter user 'root@localhost' identified by 'root';
复制代码
12、修改数据库 密码
alter user 'root'@'localhost' identified by 'root';
复制代码
13、开启navicat远程连接
发现连接成功。
# mysql -uroot -p #进入数据库
> use mysql;#进入数据库
> select host, user, authentication_string, plugin from user;#查看用户信息
mysql> update user set host='%' where user='root';
> GRANT ALL ON *.* TO 'root'@'%';#授权root用户可以远程登陆
> flush privileges;#立即生效
> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'Kuaigui2019!';#修改root用户密码
> FLUSH PRIVILEGES;#立即生效
> exit;#退出
# service mysql restart#重启mysql服务
复制代码