介绍

Linux下安装MySQL5.6,此教程演示采用Centos7安装MySQL5.6的方式进行。

安装

1.下载MySQL

MySQL下载官网:https://downloads.mysql.com/archives/community/

选择Linux通用版进行下载,注意看软件的位数32/64。

2.拖拽文件到XShell命令窗口上传文件

注意如果没有速度请先执行下面的命令:

yum -y install lrzsz

3.复制一份作为备份

cp mysql-5.6.48-linux-glibc2.12-x86_64.tar.gz /usr/local/src

如果没有权限请添加权限:

chmod 755 mysql-5.6.48-linux-glibc2.12-x86_64.tar.gz

4.检查系统是否已经安装MySQL

执行如下命令:

rpm -qa | grep mysql

若存在,则执行以下命令卸载mysql:

rpm -e --nodeps mysql-xxxx

5.解压安装包

拷贝一份到安装目录:

cp mysql-5.6.48-linux-glibc2.12-x86_64.tar.gz /usr/local

进入安装目录解压:

cd /usr/localtar -zxvf mysql-5.6.48-linux-glibc2.12-x86_64.tar.gz

命令介绍:

指令

介绍

tar

备份文件

-z

通过gzip指令处理备份文件

-x

从备份文件中还原文件

-v

显示指令执行过程

-f

指定备份文件

jdk-8u202-linux-x64.tar.gz

文件名

删除原安装包:

rm -f mysql-5.6.48-linux-glibc2.12-x86_64.tar.gz

重命名原压缩包:

mv mysql-5.6.48-linux-glibc2.12-x86_64 mysql

6.创建用户组

创建mysql用户组和mysql用户,已有无需创建(在Linux的/etc/group文件中可查看所有组,在/etc/shadow和/etc/passwd中查看所有用户)。 groupadd mysql

useradd -r -g mysql mysql

7.更换目录所有权为mysql用户

chown -R mysql:mysql mysql 目录权限设置 chmod -R 755 mysql

8.编译安装mysql

安装依赖库:

yum -y install autoconf && yum install libaio* -y && yum -y install numactl

执行脚本安装:

./scripts/mysql_install_db --user=mysql

9.创建默认日志文件夹

不创建有可能报错

mkdir /var/log/mariadb && touch /var/log/mariadb/mariadb.log

10.启动mysql

./support-files/mysql.server start 提示Starting MySQL... SUCCESS!即为启动成功。

11.修改密码

./bin/mysqladmin -u root -h localhost.localdomain password '123456'

12.登录mysql

./bin/mysql -h127.0.0.1 -uroot -p123456

13.远程登录

登录上mysql后执行如下命令(后面那句命令为刷新权限):

grant all privileges on *.* to root@'%' identified by '123456'; flush privileges;

14.开放服务器端口

需先退出登录的mysql:

exit

执行如下命令查询端口是否开放:

firewall-cmd --query-port=8080/tcp

开放3306端口:

firewall-cmd --permanent --add-port=3306/tcp

重启防火墙:

firewall-cmd --reload

参数介绍:

  • firwall-cmd:是Linux提供的操作firewall的一个工具;

  • --permanent:表示设置为持久;

  • --add-port:标识添加的端口;

15.通过navicat软件测试连接是否成功

16.mysql自启

1)将服务文件复制一份到init.d下,并重命名为mysqld。

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

2)授予执行权限。

chmod 777 /etc/init.d/mysqld

3)增加mysqld服务。

chkconfig --add mysqld

4)查询mysql情况。

chkconfig --list mysqld 如果345为off则: chkconfig --level 345 mysqld on 5)重启验证。 reboot

卸载

rm -rf /root/.mysql_sercret

rm -rf /var/lib/mysql

rm -rf /usr/local/mysql

问题解决方案

1.启动报如下的错误

2020-12-28 22:20:45 26773 [ERROR] Failed to create a socket for IPv4 '0.0.0.0': errno: 13.
2020-12-28 22:20:45 26773 [ERROR] Can't create IP socket: Permission denied
2020-12-28 22:20:45 26773 [ERROR] Aborting

因为mysql账户缺少权限,在root在执行如下命令即可。

usermod -a -G aid_inet,aid_net_raw mysql

2.命令行登录报错

报错内容

/bin/mysql -h127.0.0.1 -uroot -p123456
./bin/mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

解决办法:

安装全部libncurses包

yum install libncurses*

3.LXC容器安装注意事项

必须创建一个用户,不然启动会失败。