热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

安装MySQL_MySQL

安装MySQL
安装MySQL

假设你把所有必须的源码或者包都放在了/tmp下。如果你下载的是RPM包的话,那比较简单;如果你下载的是二进制包(你没有rpm程序或者你想自定义的话),那么会稍微麻烦一点。

RPM包安装

你必须成为root用户才能使用rpm安装程序,以下是安装过程:

$ cd /tmp

$ su

# rpm -Uvh MySQL*(安装和MySQL相关的所有包)

这将安装你下载的所有3个MySQL包。如果你的系统是RedHat Linux的话,建议使用RPM安装方式,因为所有的工作都由rpm程序帮你搞好了。

源码安装

相对于用RPM安装来讲,用二进制源码安装是稍微麻烦了点。但是我们可以在安装脚本中可以自定义安装的相关参数,而不用象rpm方式只能安装默认的来安装。

安装二进制源代码

如果你下载的是二进制源代码,它的名字类似于: mysql-3.22.21-pc-linux-gnu-i686.tar.gz。你必须成为root用户,然后解压到 /usr/local目录,操作步骤如下:

$ cd /usr/local

$ su

# tar -zxvf /tmp/mysql-3.22.21-pc-linux-gnu-i686.tar.gz

在所有文件解压完后,一个名字叫mysql-3.22.21-pc-linux-gnu-i686的目录将被创建出来。mysql-3.22.21-pc-linux-gnu-i686这么长):

# ln -s mysql-3.22.21-pc-linux-gnu-i686 mysql

如果以后有新版本的MySQL的话,你可以仅仅将源码解压到新的路径,然后只需要做个符号链接就可以了。这样非常方便,数据也更加安全。

建立一个MySQL 用户

好,现在我们将建立一个能运行MySQL守护程序的用户帐号,并且所有MySQL文件都归此帐户拥有。使用 Linuxconf或者useradd命令去添加一个叫 mysql 的帐号,在添加之前,确保没有人注册了这个帐户,还要暂时禁止login功能(不过一般都是在没有其他人登陆的情况下调试机器,因此这个步骤可免)

为MySQL做准备

首先让我们将MySQL目录和文件的拥有权改成 mysql 用户和root组:

# cd /usr/local

# chown -R mysql:root mysql-3.22.21-pc-linux-gnu-i686 mysql

然后运行一个小脚本程序,以建立初始化的MySQL数据库。请以一个mysql 用户的身份完成这个任务,这也是我们能够直接使用这个帐户的唯一机会。

# su mysql

$ cd mysql

$ scripts/mysql_install_db

$ exit

如果没有任何出错信息显示的话,那就可以了。

自动运行MySQL

在MySQL二进制包里面,有一个叫myslq.server的启动脚本程序。把它复制到/etc/rc.d/init.d目录里面:

# cd /etc/rc.d/init.d

# cp /usr/local/mysql/support-files/mysql.server mysql

接着把它的属性改为“x”(executable,可执行)

# chmod +x mysql

最后,运行chkconfig把MySQL添加到你系统的启动服务组里面去。

# /sbin/chkconfig --del mysql

# /sbin/chkconfig --add mysql

测试MySQL

MySQL里面有一个简单的数据库例子test ,而且它的内部数据库一直保持对权限和帐户的监视,因而先运行mysql看看是否可以工作。

首先启动MySQL:

# /etc/rc.d/init.d/mysql start

如果一切正常,你将看到以下的信息出现:

Starting mysqld daemon with databases from /var/lib/mysql

如果你安装的是RPM包,那么程序大都安装在/usr/local/mysql/bin。在此目录下运行客户端程序:

# mysql

然后你可以看到屏幕显示出以下信息:

Welcome to the MySQL monitor. Commands end with ; or /g.

Your MySQL connection id is 2 to server version: 3.22.21

Type 'help' for help.

mysql>

接着,用show databases命令可以将安装的数据库列出来:

mysql> show databases;

你就可以看到:

+----------+

| Database |

+----------+

| mysql |

| test |

+----------+

2 rows in set (0.00 sec)

如果一切正常的话,那说明MySQL可以完全工作了!恭喜你!如果要退出程序,输入:exit

mysql> exit;

Bye

更改管理员密码

在一切正常后,要做的第一件事情是更改管理员的密码。你可以运行mysqladmin (请注意,此命令不一定在你的path中,所以最好是转到此命令的目录中直接执行):

# mysqladmin -u root password newpassword

此命令把root用户的口令变成newpassword。当然你可以把口令换成其它,因为这个很容易破解

推荐阅读
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文讨论了B360主板是否可以安装win7系统的问题。由于B360主板不支持win7系统且缺乏官方驱动的支持,安装win7系统可能存在兼容性和稳定性问题。然而,通过借助USB3.0转接卡,B360主板仍然可以安装win7系统,但USB接口无法使用。相比之下,B365主板可以直接支持win7系统,并提供了相应的驱动,具有更好的稳定性和兼容性。选择合适的主板对于安装win7系统至关重要。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • SpringBoot uri统一权限管理的实现方法及步骤详解
    本文详细介绍了SpringBoot中实现uri统一权限管理的方法,包括表结构定义、自动统计URI并自动删除脏数据、程序启动加载等步骤。通过该方法可以提高系统的安全性,实现对系统任意接口的权限拦截验证。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
author-avatar
爱上小胸女人
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有