-
首先下载一个mysql压缩包,下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-x86_64.tar
-
通过Shell上传文件到Linux服务器
输入rz命令,看是否已经安装了lrzsz,如果没有安装则执行 yum -y install lrzsz 命令进行安装。
安装完成后,输入 rpm -qa lrzsz 命令确认是否正确安装。
安装成功之后,将压缩文件上传到服务器home文件夹下,使用 rz -y命令进行文件上传,此时会弹出上传的窗口,选择需要上传的文件上传。
-
解压上传的mysql压缩文件
命令:tar -xvf mysql-5.7.25-linux-glibc2.12-x86_64.tar
-
解压mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz文件到/usr/local文件夹
命令:tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
进入/usr/local/目录查看
重命名命令:mv mysql-5.7.25-linux-glibc2.12-x86_64/ mysql
-
创建一个mysql用户和组
命令:groupadd mysql
useradd -r -g mysql mysql -
关联myql用户到mysql用户组中
chown -R mysql:mysql /usr/local/mysql
chown -R mysql /usr/local/mysql -
更改mysql安装文件夹mysql/的权限
chmod -R 755 /usr/local/mysql -
安装libaio依赖包
查询是否安装libaio依赖包
yum search libaio
如果没安装,可以用下面命令安装
yum install libaio -
初始化mysql命令
bin/mysqld --initialize --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
如果出现如下错误:
bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
先执行命令:yum remove libnuma.so.1
再执行命令: yum -y install numactl.x86_64
然后再次执行初始化mysql命令,下图中红框处为mysql初始化密码
-
修改权限为root
chown -R root:root . -
添加启动mysql服务和开机启动mysql服务
开机启动执行命令:cp support-files/mysql.server /etc/init.d/mysql
启动mysql服务执行命令:service mysql start
如果出现如下错误:
Starting MySQL.2019-04-11T09:00:59.624696Z 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 (/var/lib/mysql/VM_0_2_centos.pid).
进入/var/log/目录查看没有mariadb文件夹,那我们就创建,并给mysql用户授权
mkdir /var/log/mariadb
touch /var/log/mariadb/mariadb.log
chown -R mysql:mysql /var/log/mariadb/
再次执行启动mysql服务命令
12. 设置root用户密码
./bin/mysqladmin -u root password ‘123456’
出现下图错误:
find / -name mysql.sock
执行上面这条命令,能查到结果的话,只需将查到的结果做一个软连接到/tmp目录下即可解决
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
再次设置root用户密码出现如下错误:
一般这个错误是由密码错误引起,解决的办法自然就是重置密码
重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:
vim /etc/my.cnf
保存文档并退出:
:wq
接下来我们需要重启MySQL:
/etc/init.d/mysql restart
重启之后输入./bin/mysql即可进入mysql
接下来就是用sql来修改root的密码:
mysql> use mysql;
mysql> update user set authentication_string=password(“123456”) where user=“root”;
mysql> flush privileges;
mysql> quit
到这里root账户就已经重置成新的密码了。
编辑my.cnf,去掉刚才添加的内容,然后重启mysql。
- 用navicat连接数据库报错:1130-host … is not allowed to connect to this MySql server处理
遇到这个问题首先到mysql所在的服务器上用连接进行处理
a) 连接服务器: ./bin/mysql -u root -p
b) 看当前所有数据库:show databases;
c) 进入mysql数据库:use mysql;
d) 查看mysql数据库中所有的表:show tables;
e) 查看user表中的数据:select Host, User, authentication_string from user;
f) 修改user表中的Host:update user set Host=’%’ where User=‘root’;
g) 最后刷新一下:flush privileges;
再次使用navicat连接成功。