centos如何安装mysql

发布时间 - 2020-03-19 00:00:00    点击率:

centos如何安装mysql?

CentOS中安装MySQL步骤详解

本文中Linux环境为CentOS 6.4 32位,且安装选择的是Basic Server版。

在有些Linux版本中会自带有MySQL数据库,所以在安装之前,需要检查当前Linux环境中是否已有MySQL数据库,若有,则先将其卸载。

以下为在CentOS中安装MySQL的基本步骤:

1)查看当前系统是否自带MySQL数据库

[root@MySqlServer ~]# rpm -qa | grep mysql
mysql-libs-5.1.66-2.el6_3.i686
[root@MySqlServer ~]#

说明:执行 rpm -qa | grep mysql 命令来查看当然系统是否自带有MySQL数据库,若有,则会显示MySQL软件名称。

2)卸载自带的MySQL数据库

[root@MySqlServer ~]# rpm -e --nodeps mysql-libs-5.1.66-2.el6_3.i686
[root@MySqlServer ~]#

 说明:命令 rpm -e --nodeps [要卸载的软件名] 用于卸载软件。

3)上传MySQL至Linux

该步骤可以使用很多种方式进行文件的上传。由于此时本人使用的电脑是Mac,因此本文中使用 scp 命令,来进行文件传输。(也可以使用FTP工具来进行图形化界面操作)。

bogon:~ hrvy$ scp ~/Downloads/MySQL/MySQL-5.6.22-1.el6.i686.rpm-bundle.tar root@192.168.170.129:~/
root@192.168.170.129's password:
MySQL-5.6.22-1.el6.i686.rpm-bundle.tar        100%  205MB  16.9MB/s   00:12
bogon:~ hrvy$

4)解压MySQL软件包

解压MySQL到/usr/local/下的mysql目录(mysql目录需要手动创建)。首先创建/usr/local/mysql/目录,然后解压至该目录内。

[root@MySqlServer ~]# mkdir /usr/local/mysql
[root@MySqlServer ~]# tar -xvf MySQL-5.6.22-1.el6.i686.rpm-bundle.tar -C /usr/local/mysql/
MySQL-shared-compat-5.6.22-1.el6.i686.rpm
MySQL-server-5.6.22-1.el6.i686.rpm
MySQL-client-5.6.22-1.el6.i686.rpm
MySQL-devel-5.6.22-1.el6.i686.rpm
MySQL-test-5.6.22-1.el6.i686.rpm
MySQL-shared-5.6.22-1.el6.i686.rpm
MySQL-embedded-5.6.22-1.el6.i686.rpm
[root@MySqlServer ~]#

5)安装MySQL

经过第4步操作后,将当前目录切换到/usr/local/mysql/,可以看到该目录中有很多后缀为.rpm的安装包,而实际只需要安装server和client即可。

[root@MySqlServer ~]# cd /usr/local/mysql/
[root@MySqlServer mysql]# ls
MySQL-client-5.6.22-1.el6.i686.rpm    MySQL-shared-5.6.22-1.el6.i686.rpm
MySQL-devel-5.6.22-1.el6.i686.rpm     MySQL-shared-compat-5.6.22-1.el6.i686.rpm
MySQL-embedded-5.6.22-1.el6.i686.rpm  MySQL-test-5.6.22-1.el6.i686.rpm
MySQL-server-5.6.22-1.el6.i686.rpm
[root@MySqlServer mysql]#

安装MySQL server:

[root@MySqlServer mysql]# rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm

如提示 error: Failed dependencies: 错误,则需要安装MySQL依赖,执行以下命令即可:

[root@MySqlServer mysql]# yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so.6
[root@MySqlServer mysql]#

安装MySQL client:

[root@MySqlServer mysql]# rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm

至此,MySQL数据库安装完成!

6)启动mysql服务

[root@MySqlServer mysql]# service mysql start
Starting MySQL.                                            [  OK  ]
[root@MySqlServer mysql]#

7)连接数据库

[root@MySqlServer mysql]# mysql -uroot -p
Enter password:

此时,遇到一个问题,安装好的MySQL数据库密码是多少呢?其实,在安装MySQL server的时候,安装日志已经说明:生产的随机密码保存在/root/.mysql_secret文件中,可以查看一下这个文件:

[root@MySqlServer mysql]# cat /root/.mysql_secret
# The random password set for the root user at Fri Jun 21 04:56:26 2019 (local time): 0lv4ltBp_sawlAGA
[root@MySqlServer mysql]#

现在,就可以登陆数据库了!

8)修改密码

登陆数据库之后,由于随机生成的密码太过难记,可以修改一个简单的密码,一边自己使用。

mysql> set password = password('root');
Query OK, 0 rows affected (0.01 sec)

 此处将密码设置为了root。现在可以退出重新登录,看看密码是否修改成功。

9)将mysql服务加入系统服务,并设置为开机启动

每当Linux系统重启之后,总要手动启动mysql服务,故为了方便,将其加入系统服务中,并设为开机自启。

[root@MySqlServer mysql]# chkconfig --add mysql
[root@MySqlServer mysql]# chkconfig mysql on

10)开启mysql的远程登录

因为MySQL数据库是安装在Linux上的,而现实操作往往并不是在该Linux直接使用,正常都是在本机上安装一款MySQL图形化管理工具,远程连接上Linux中的MySQL即可。

而远程登录数据库时,必须登陆的用户具有远程登录的权限,否则是无法登陆成功的。

mysql> grant all privileges on *.* to 'root' @'%' identified by 'root';
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql>

说明:grant ... 语句中,第一个 'root' 是用户名,第二个 'root' 是远程登录密码,远程登录密码可以设置为其他,其仅作为远程登录使用的密码。flush ... 语句作用:刷新权限,使设置生效。

11)开启3306端口

默认情况下,Linux的防火墙是开启的,3306端口也是未对外发放的,所以尽管上面那么多步骤全部正确完成,依旧远程连接不了数据库。此时解决方案有二:1)关闭Linux的防火墙;2)开启3306端口。

本案例使用的是开启3306端口,而并非直接关闭Linux防火墙。

[root@MySqlServer mysql]# iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

【注意】使用 iptables 命令配置的防火墙规则默认会在系统下一次重启时失效,如果想让配置的防火墙策略永久生效,执行下面的保存命令:

[root@MySqlServer mysql]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]

推荐学习Linux视频教程:https://www./course/list/33.html


# centos  # 远程登录  # 的是  # 是在  # 将其  # 可以使用  # 若有  # 自带  # 重启  # 设置为  # 图形化 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  如何快速搭建个人网站并优化SEO?  用v-html解决Vue.js渲染中html标签不被解析的问题  JavaScript如何实现错误处理_try...catch如何捕获异常?  微信小程序 配置文件详细介绍  php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  html5的keygen标签为什么废弃_替代方案说明【解答】  黑客如何利用漏洞与弱口令入侵网站服务器?  php485函数参数是什么意思_php485各参数详细说明【介绍】  如何在Windows环境下新建FTP站点并设置权限?  如何彻底删除建站之星生成的Banner?  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  如何在建站之星绑定自定义域名?  音乐网站服务器如何优化API响应速度?  什么是javascript作用域_全局和局部作用域有什么区别?  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  Laravel如何使用Sanctum进行API认证?(SPA实战)  独立制作一个网站多少钱,建立网站需要花多少钱?  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  活动邀请函制作网站有哪些,活动邀请函文案?  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  如何基于PHP生成高效IDC网络公司建站源码?  Laravel如何集成Inertia.js与Vue/React?(安装配置)  Laravel如何保护应用免受CSRF攻击?(原理和示例)  Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】  Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧  Java遍历集合的三种方式  Laravel如何实现用户注册和登录?(Auth脚手架指南)  深圳网站制作培训,深圳哪些招聘网站比较好?  iOS中将个别页面强制横屏其他页面竖屏  Laravel如何处理表单验证?(Requests代码示例)  新三国志曹操传主线渭水交兵攻略  如何快速搭建高效可靠的建站解决方案?  浅析上传头像示例及其注意事项  高端智能建站公司优选:品牌定制与SEO优化一站式服务  Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制  JS实现鼠标移上去显示图片或微信二维码  怎么用AI帮你为初创公司进行市场定位分析?  Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  Python高阶函数应用_函数作为参数说明【指导】  如何在云服务器上快速搭建个人网站?  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  iOS发送验证码倒计时应用  长沙做网站要多少钱,长沙国安网络怎么样?  如何在七牛云存储上搭建网站并设置自定义域名?  Laravel如何使用Blade组件和插槽?(Component代码示例)  Laravel用户密码怎么加密_Laravel Hash门面使用教程