在linux安装mysql5.7时,发现有好多不同的安装方法,而且在安装的过程中出现了各种问题。所以在安装之后整理了一下。
安装流程
1、下载mysql5.7
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
2、解压并重命名(非必须,方便配置)
这里说一下,我是下载到了/data目录下,重名为mysql
#解压
tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
#重命名
mv ./mysql-5.7.26-linux-glibc2.12-x86_64 ./mysql
3、创建mysql用户、mysql数据目录,并赋权
groupadd mysql
useradd -r -g mysql mysql
mkdir -p /data/mysql-data
chown mysql:mysql -R /data/mysql-data
4、配置my.cnf
vi /etc/my.cnf
把里面的内容换成
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/data/mysql
datadir=/data/mysql-data
socket=/tmp/mysql.sock
log-error=/data/mysql-data/mysql.err
pid-file=/data/mysql-data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
5、初始化mysql
进入到/data/mysql/bin
./mysqld --defaults-file=/etc/my.cnf --basedir=/data/mysql --datadir=/data/mysql-data --user=mysql --initialize
6、启动mysql
先将mysql.server放置到/etc/init.d/mysql中
cp /data/mysql/support-files/mysql.server /etc/init.d/mysql
启动mysql:service mysql start
停止mysql:service mysql stop
7、修改root密码
查看原始root密码:cat /data/mysql-data/mysql.err
然后在/data/mysql/bin目录下./mysql -u root -p
然后再输入上面的初始密码就可以进入到mysql数据库中。
#选择数据库
use mysql
#修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '*********';
8、远程连接配置
登录mysql
#切换数据库
use mysql;
#更改访问设置
update user set host = '%' where user = 'root';
#刷新
FLUSH PRIVILEGES;
至此,mysql安装完毕。
问题及解决办法
1、报错:./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
2、报错:Could not open file ‘/data/mysql/mysql.err’ for error logging: Permission denied
解决办法:
sudo chown -R mysql:mysql /data/mysql
3、登录mysql时报错:Access denied for user ‘root’@‘localhost’ (using password: YES)
解决办法:
先修改/etc/my.cnf,添加:skip-grant-tables 跳过密码验证
然后重启mysql,再登录mysql就可以不使用密码进入mysql。
#选择数据库
use mysql
#修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '*********';
然后退出,把my.cnf中skip-grant-tables删除掉,重启mysql。就完成了修改密码。