准备在Linux环境安装Mysql数据库测试,下面是我遇到的一些问题和解决方案。
一、准备工作
1、下载Mysql安装包
1)直接在Linux终端界面使用wget命令下载:
wget 下载地址
如:
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.12-linux-glibc2.12-x86_64.tar.xz
这个地址似乎失效了,我自己之前是使用这个地址下载的。
Mysql安装包会下载到执行此命令的目录下面
2)直接登录官网下载Mysql安装包,这个不多做赘述
二、解压安装包
1、执行"xz -d mysql-8.0.12-linux-glibc2.12-x86_64.tar.xz"解压,然后使用tar命令解压文件到指定文件目录。或者直接使用以下命令解压安装包:
tar -xJvf mysql-8.0.12-linux-glibc2.12-x86_64.tar.xz -C /mysql
2、将解压的文件拷贝到指定文件夹
mv /mysql/mysql-8.0.12-linux-glibc2.12-x86_64/* /mysql
rm /mysql/mysql-8.0.12-linux-glibc2.12-x86_64
三、修改配置文件
1、修改 support-files/mysql.service 文件(该文件在安装根目录下面)
修改图中圈起来部分的路径,修改为实际安装路径。
vim /mysql/support-files/mysql.service
修改完成后将文件拷贝到/etc/init.d中,如下
cp /mysql/support-files/mysql.service /etc/init.d/mysqld
2、修改 /etc/my.cnf ,如果该文件不存在,就自己新建一个,按照网上的模式拷贝一份
这里我写了一个简单的配置,注意不要写错路径,不然会文件找不到
vim /etc/my.cnf
四、使用以下命令初始化数据库配置
/mysql/bin/mysqld --user=mysql --basedir=/mysql --datadir=/mysql/data --initialize
五、执行命令启动mysql服务
service mysqld start
六、此时使用mysql命令会报未找到错误,是因为系统没有配置路径,我们可以配置环境变量,也可以给mysql建立一个软连接,这里我们采用后者解决问题
cd /usr/bin
ln -s /mysql/bin/mysql /usr/bin
七、接下来我们就可以使用mysql命令登录mysql了
mysql -u root -p
到此,mysql安装成功了,接下来就是建立数据库和表了。
八、防火墙打开数据库连接端口
由于centos默认只开通22端口,所以数据库3306端口需要我们手动开通,具体操作如下:
使用root用户登录,执行以下命令:
#vim /etc/sysconfig/iptables
添加如下信息:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
添加完成重启iptables(防火墙):
#service iptables restart
使用命令查看端口是否开启成功:
#iptables -vnL
同时使用netstat命令查看端口监听情况:
#netstat -ntpl
最后,可以通过/sbin/iptables -F清除所有规则来暂时停止防火墙: (警告:这只适合在没有配置防火墙的环境中,如果已经配置过默认规则为deny的环境,此步骤将使系统的所有网络访问中断)或者重启
遇到的问题:
在安装的过程中,经常会遇到2002的错误,这个是因为配置文件中的路径没有修改,导致服务找不到对应的路径。其中还有找不到PID或者找不到mysqld_safe等这个问题是因为在my.cnf的文件中没有配置相应的属性。
在使用Navicat链接虚拟机Mysql数据库时,每次总是报2003错误10060报错,测试链接一直
失败。然后修改了用户权限,以及配置了防火墙端口,才连接成功。