Linux安装MySQL(详解)
这是我安装了三次MySQL总结出来的流程。。。没啥问题了
1、下载
mysql各版本下载地址: http://ftp.ntu.edu.tw/MySQL/Downloads/
我这里选择5.5.47,通用版,linux下64位。
2、解压
#将安装包放到/usr/local目录下,解压
[aaa@qq.com local]# tar -zxvf mysql-5.5.47-linux2.6-i686.tar.gz
#修改解压目录名称为mysql
3、添加用户组和用户
#添加用户组
[aaa@qq.com local]# groupadd mysql
#添加用户mysql 到用户组mysql
[aaa@qq.com local]# useradd -g mysql mysql
4、安装
#设置权限
[aaa@qq.com local]# chown -R mysql .
[aaa@qq.com local]# chgrp -R mysql .
[aaa@qq.com bin]# yum install libaio
#执行安装脚本:
[aaa@qq.com mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data
#注意,在执行这一步时可能会遇到如下报错:
#(1)
报错:在64系统里执行32位程序如果出现/lib/ld-linux.so.2:
bad ELF interpreter: No such file or directory.......
解决方法:安装glic
执行命令:sudo yum install glibc.i686
#(2)再次执行刚才的安装命令
报错:
解决方法:安装libgcc
执行命令:yum install libgcc libgcc.i686
#(3)再再次执行刚才的安装命令
报错:
解决方法:安装 libaio.so.1
执行命令:yum install -y libaio.so.1
执行后出现下图内容,则初始化成功!
成功后接着执行下面命令:
[aaa@qq.com mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[aaa@qq.com mysql]# chmod 755 /etc/init.d/mysqld
#注意:5.6之前的版本是此操作
[aaa@qq.com mysql]# cp support-files/my-medium.cnf /etc/my.cnf
# 5.6之后的版本执行以下操作
[aaa@qq.com mysql]# cp support-files/my-default.cnf /etc/my.cnf
#修改启动脚本
[aaa@qq.com mysql]# vi /etc/init.d/mysqld
#修改项:
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data/mysql
#启动服务
service mysqld start
可能会报如下错误:
解决方法:编辑/etc/my.cnf文件
[aaa@qq.com mysql]# vim /etc/my.cnf
#添加内容:
[mysqld]
datadir = /usr/local/mysql/data
#如果想开启mysql的日志机制,可在/usr/local/mysql目录下创建一个文件夹,命名为log,
#然后在该目录下手动创建一个文件:mysql.log
#再在[mysqld]模块中添加如下内容:
log=/usr/local/mysql/log/mysql.log
long_query_time=2
log-slow-queries= /usr/local/mysql/log/slowquery.log
log_error=/usr/local/mysql/log/mysql.log
如图:
文件保存后,再次启动,服务开启成功
5、登录测试
#接着再进行以下操作
[aaa@qq.com ~]# yum install ncurses ncurses-devel
[aaa@qq.com ~]# yum install libncurses.so.5
[aaa@qq.com ~]# /usr/local/mysql/bin/mysql -V
#登录测试
[aaa@qq.com ~]# /usr/local/mysql/bin/mysql
#也可用以下方式登录
[aaa@qq.com local]# ./mysql/bin/mysql -uroot
6、重置用户密码
#刚安装好的MySQL,默认是没有密码的,所以在上面的登录测试时,直接可以进入mysql模式
#下面我们给用户设置密码:
mysql> use mysql;
mysql> update user set password=passworD("test") where user='root';
mysql> flush privileges;
mysql> exit;
7、使用新密码登录
设置密码后,再次用 ./mysql/bin/mysql -uroot 登录,则会报错:
改用 mysql -uroot -p 登录:
解决方法:安装mysql命令行
执行命令: yum install mysql
安装命令行后,再次登录(可在任意位置进行登录操作),显示需要输入密码,
这时候输入刚才设置的密码,即可登录成功!
8、开启mysql的远程访问权限
#(1)授权
#方法一:
mysql> use mysql;
mysql> GRANT ALL PRIVILEGES ON *.* TO aaa@qq.com"%" IDENTIFIED BY "root";
mysql> flush privileges;
#方法二:
mysql> use mysql;
mysql> update user set host = '%' where user = 'root';
mysql> select host, user from user;
mysql> flush privileges;
#(2)然后,开放防火墙端口:
#打开防火墙配置文件
[aaa@qq.com ~]# vi /etc/sysconfig/iptables
执行以上命令发现没有iptables文件,那是因为
操作系统默认使用的是firewall作为防火墙,把它停掉装个iptables:
[aaa@qq.com ~]# systemctl stop firewalld
[aaa@qq.com ~]# systemctl mask firewalld
[aaa@qq.com ~]# yum install -y iptables
[aaa@qq.com ~]# yum install iptables-services
然后/etc/sysconfig目录下就有了iptables文件,我们就可以做配置了:
#打开文件
[aaa@qq.com ~]# vi /etc/sysconfig/iptables
#增加下面一行
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
上个图以供参考 ~
#重启防火墙
[aaa@qq.com ~]# service iptables restart
#注意:增加的开放3306端口的语句一定要在icmp-host-prohibited之前
#(3)如果是云服务器,则确保阿里云实例里开放了3306端口
相关命令:
service mysqld restart #重启mysql
service mysqld start #启动mysql
service mysqld stop #关闭mysql
service mysqld status #查看运行状态
到此,MySQL安装完成!
上一篇: 你去的地方我指给你看就行了
下一篇: Linux tomcat安装详解