本文主要是介绍刚哥的mysql5.6安装总结,很全面,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
0、卸载老版本MySQL
查找并删除mysql有关的文件
find / -name mysql
rm -rf 上边查找到的路径,多个路径用空格隔开
#或者下边一条命令即可
find / -name mysql|xargs rm -rf
-
在安装包存放目录下执行命令解压文件:
tar -zxvf mysql-5.6.42-linux-glibc2.12-x86_64.tar.gz
2.删除安装包,重命名解压后的文件 移动解压后的到/usr/local
rm -f mysql-5.6.42-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.6.42-linux-glibc2.12-x86_64/ mysql
mv mysql/ /usr/local/
3、添加mysql用户组和mysql用户
先检查是否有mysql用户组和mysql用户groups mysql
若无,则添加;
groupadd mysql
useradd -r -g mysql mysql
若有,则跳过;
4、进入mysql目录更改权限cd /usr/localmysql/
chown -R mysql:mysql ./
5、执行安装脚本./scripts/mysql_install_db --user=mysql
报错1. 缺少依赖
解决1. 下载依赖
yum -y install perl perl-devel
报错2. 缺少依赖
解决2. 下载依赖
yum install libaio* -y
报错3. 缺少依赖
解决3. 下载依赖
yum -y install numactl
yum -y install autoconf
安装完之后修改当前目录拥有者为root用户,修改data目录拥有者为mysql
chown -R root:root ./
chown -R mysql:mysql data
6、更改mysql密码上一步安装脚本执行输出的日志中告诉我们如何更改密码了
但是如果直接执行这两条命令就会报错
因为这时还没有启动mysql,这算是一个坑。启动方法如下
./support-files/mysql.server start
如果MySQL启动报错,则可能是已经存在MySQL进程,杀掉即可
ps aux|grep mysql
kill -9 上边的进程号
#或者下边一条命令即可杀掉所有MySQL进程
ps aux|grep mysql|awk '{print $2}'|xargs kill -9
杀掉后再启动即可。
一定设置好data文件夹的权限,否则报下面的错误
MySQL启动之后再执行如下命令更改密码:
./bin/mysqladmin -u root -h localhost.localdomain password 'root'
密码更改后即可登录MySQL
./bin/mysql -h127.0.0.1 -uroot -proot
登录之后将其他用户的密码也可改为root
update mysql.user set password=password('root') where user='root';
flush privileges;
退出后用mysql -u root -proot 登陆会报错
-bash:mysql:command not found
问题原因:因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时,系统在/usr/bin下面查此命令,所以找不到了 解决方法: ln -s /usr/local/mysql/bin/mysql /usr/bin 做个链接即可
做好mysql软链后登陆mysql又报个错
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
问题原因: 找不到mysql.sock
解决方法: 执行find / -name mysql.sock 找到以后做个软链
7、增加远程登录权限上一步即可本地登录,但远程登录会报错
为解决这一问题,需要本地登陆MySQL后执行如下命令
grant all privileges on *.* to root@'%' identified by 'root';
flush privileges;
设置好远程登陆权限权限以后 navicate还是登陆不上
这里是因为centos本身的防火墙导致的 这里需要设置一下
把-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT 放在下面的位置,
不要乱放,这就开放了mysql远程连接的端口,然后重启一下iptables的服务就ok了。
vi /etc/sysconfig/iptables
8、将MySQL加入Service系统服务
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
service mysqld restart
service mysqld status
9、配置my.cnf vim /usr/local/mysql/my.cnf
#添加以下两条语句并保存退出
character-set-server=utf8
lower_case_table_names=1
max_allowed_packet=100M
配置好之后,重启mysqld服务
service mysqld restart
这篇关于刚哥的mysql5.6安装总结,很全面的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!