Mysql安装教程:超简单
1.下载对应安装包:
下载地址https://dev.mysql.com/downloads/mysql/
2.进入压缩包存放目录
[root@localhost ~]# cd /usr/local
3.解压压缩包
[root@localhost local]# tar -xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
4.修改文件夹名字
将解压后的文件夹修改名字,文件夹名字改为mysql
[root@localhost local]mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql
5.检查并创建用户和用户组
[root@localhost local]# cat /etc/group | grep mysql
[root@localhost local]# cat /etc/passwd |grep mysql
[root@localhost local]# groupadd mysql
[root@localhost local]# useradd -r -g mysql mysql
6.创建data文件夹
[root@localhost local]mkdir /usr/local/mysql/data
7.授权目录和用户
[root@localhost /]# cd /usr/local/
[root@localhost local]# chown -R mysql:mysql mysql/
[root@localhost local]# chmod -R 755 mysql/
8.安装并初始化
执行下面之前去/etc/目录下查看是否有my.cnf配置文件,如果有,删除或者修改名字备份起来!不然会出现各种PID或者SOCK有关的问题 :例如
检查无误后:初始化
/usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
执行完上面之后,最后一行会有默认生成的密码,记下来
如果上面报错,报错信息如下:
error while loading shared libraries: libnuma.so.1: cannot open shared object file.....
解决方法:
yum 安装的libnuma.so.1,但安装时默认安装的是32的,但db2需要的是64位的,先卸载32位的,再安装64的,执行下面即可
yum remove libnuma.so.1
yum -y install numactl.x86_64
9.复制启动脚本到资源目录
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
提示是否覆盖的话,可能之前装过没删除,输入y覆盖
10.增加mysqld服务控制脚本执行权限
[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld
11.检查mysqld服务是否已经生效
[root@localhost mysql]# chkconfig --list mysqld
12.启动mysql
[root@localhost mysql]# service mysqld start
显示SUCCESS的话,到这里就已经启动成功了
13.启动mysql失败
提示找不到mysql命令的话
[root@localhost mysql]# ln -s /usr/local/mysql/bin/mysql /usr/bin
14.提示找不到pid:
查看是否有my.cnf文件(以前存留下来的),如果存在备份修改名字即可
15.登录mysql
mysql -uroot -p
密码就是刚刚初始化成功后保存的那个密码
16.登录mysql失败
失败信息:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
[root@localhost mysql]# ln -s /var/lib/mysqld/mysql.sock /tmp/mysql.sock
17.修改密码
SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;
18.测试连接
本地使用Navicat连接测试,填写完点击连接测试
显示错误信息不允许连接1130 - Host ‘192.168.114.1’ is not allowed to connect to this MySQL server
解决方法:
mysql> flush privileges;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
mysql> flush privileges;
执行完再次连接测试 :
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
注意:这里远程连接的密码是123456,我设置和root一样,最好保持一致。
19.结束,nice!