mysql一键安装教程 mysql5.1.45全自动安装(编译安装)

yizhihongxing

MySQL一键安装教程(MySQL5.1.45全自动安装 - 编译安装)

前言

MySQL 是一款开源的关系型数据库管理系统,被广泛应用于互联网行业和企业级应用中。本文主要介绍 MySQL 在 Linux 操作系统中的一键安装教程。我们将通过编译安装的方式来完成全自动安装。

准备工作

在进行 MySQL 安装前,我们需要做如下准备工作:

  • 安装必要的编译工具和开发库,如 gcc、make、cmake、libncurses5-dev;
  • 下载 MySQL 的源码包;
  • 创建 MySQL 安装目录;
  • 创建 MySQL 运行账户;
  • 创建 MySQL 数据目录。

安装流程

步骤一:安装必要的编译工具和开发库

在 Ubuntu 系统中,我们可以通过以下命令完成必要的安装工作:

sudo apt-get update  
sudo apt-get install gcc make cmake libncurses5-dev

步骤二:下载 MySQL 的源码包

  1. 查看 MySQL 官方网站,找到对应版本的源码包下载地址:https://downloads.mysql.com/archives/community/
  2. 下载 MySQL 源码包到本地。
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.1.45.tar.gz

步骤三:创建 MySQL 安装目录

sudo mkdir /usr/local/mysql

步骤四:创建 MySQL 运行账户

创建用户组和用户:

sudo groupadd mysql 
sudo useradd -g mysql mysql

修改 /usr/local/mysql/ 目录的权限:

sudo chown -R mysql:mysql /usr/local/mysql

步骤五:解压源码包并配置编译选项

tar -zxvf mysql-5.1.45.tar.gz

cd mysql-5.1.45/

sudo cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_DEBUG=0 \
-DWITH_SSL=bundled \
-DWITH_READLINE=on

说明:上述 CMake 配置参数含义如下:

  • -DCMAKE_INSTALL_PREFIX:MySQL 安装目录路径;
  • -DMYSQL_DATADIR:MySQL 数据目录路径;
  • -DWITH_INNOBASE_STORAGE_ENGINE:启用 InnoDB 存储引擎;
  • -DWITH_BLACKHOLE_STORAGE_ENGINE:启用 Blackhole 存储引擎;
  • -DENABLED_LOCAL_INFILE:启用从本地加载数据;
  • -DEXTRA_CHARSETS:支持的字符集;
  • -DDEFAULT_CHARSET:默认字符集;
  • -DDEFAULT_COLLATION:默认排序方式;
  • -DWITH_DEBUG:开启调试;
  • -DWITH_SSL=bundled:开启 SSL 支持;
  • -DWITH_READLINE=on:启用 Readline 库。

步骤六:编译并安装 MySQL

sudo make
sudo make install

步骤七:初始化 MySQL

cd /usr/local/mysql

sudo chown -R mysql:mysql .
sudo ./scripts/mysql_install_db --user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data

步骤八:启动 MySQL

sudo ./bin/mysqld_safe &

步骤九:设置 root 账户密码

sudo ./bin/mysql_secure_installation

示例说明

示例一:开启 mysql 端口

  1. 编辑 MySQL 配置文件 /etc/my.cnf,添加如下内容
[mysqld] 
bind-address = 127.0.0.1 
port = 3306
  1. 重启 MySQL 服务
sudo service mysql restart
  1. 检查 MySQL 端口是否开启
sudo netstat -ntlp | grep 3306

示例二:创建新的 MySQL 数据库和用户

  1. 登录 MySQL 服务
sudo mysql -u root -p
  1. 新建数据库
CREATE DATABASE test_db;
  1. 新建用户,设定密码,授权访问数据库
CREATE USER 'test_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON test_db.* TO 'test_user'@'localhost';

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:mysql一键安装教程 mysql5.1.45全自动安装(编译安装) - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • ASP语言实现对SQL SERVER数据库的操作

    ASP是一种常用于Web开发的服务器端脚本语言,它可以通过连接数据库来实现对数据的操作。SQL SERVER是Microsoft公司开发的关系型数据库管理系统(RDBMS),它与ASP可以很好地结合使用。 下面是实现ASP语言对SQL SERVER数据库的操作的完整攻略: 1. 安装SQL SERVER驱动程序 在ASP程序中操作SQL SERVER数据库,…

    database 2023年5月21日
    00
  • sql语句查询数据库中的表名/列名/主键/自动增长值实例

    查询表名 可以使用以下SQL语句查询数据库中的所有表名: SHOW TABLES; 该语句将返回所有表名的列表。 如果你想查询特定数据库中的表名,可以使用以下语句: SHOW TABLES FROM [DATABASE NAME]; 将以上语句中的“[DATABASE NAME]”替换为你要查询的数据库的名称。 查询列名 针对特定的表名,可以使用以下SQL语…

    database 2023年5月21日
    00
  • 快速解决PostgreSQL中的Permission denied问题

    下面是针对PostgreSQL中的权限问题的完整攻略。 问题概述 在使用PostgreSQL数据库时,可能会遇到Permission denied(权限被拒绝)的问题。这通常是由于当前用户没有足够的权限操作数据库或文件系统导致的。这篇攻略介绍了如何识别和解决这类问题。 识别问题 当你在PostgreSQL中尝试执行某些操作时,如果出现Permission d…

    database 2023年5月18日
    00
  • java新特性之for循环最全的用法总结

    Java新特性之for循环最全的用法总结 常规for循环 for (int i = 0; i < 10; i++) { System.out.println(i); } 在for循环中,首先定义一个初始值i为0,然后定义一个判断语句i < 10来指定循环的终止条件,最后每次循环结束后让i自增1。上述示例代码就是利用for循环输出0到9的数字。这是…

    database 2023年5月21日
    00
  • 如何使用Python在MySQL中使用读锁和写锁?

    在MySQL中,读锁和写锁是用于控制并发访问的机制,它们可以确保多个用户同时访问同一行时不会发生冲突。在Python中,可以使用MySQL连接来执行读锁和写锁查询以下是在Python使用读锁和写锁的完整攻略,包括读锁和写锁的基本语法使用读锁和写锁的例以如何在Python中使用读锁和写锁。 读锁和写锁的基本语法 在MySQL中,可以使用SELECT语句来读锁,…

    python 2023年5月12日
    00
  • PHP+MySQL手工注入语句大全 MySQL手工注入语句总结

    PHP+MySQL手工注入语句大全 MySQL手工注入语句总结攻略 什么是手工注入? 手工注入是一种攻击技术,攻击者利用输入验证错误,通过手动构造特殊的输入字符串,向Web应用程序中注入恶意代码,以获取数据库敏感信息。 手工注入的主要目标是通过针对Web应用程序暴露出的漏洞,使攻击者能够以合法用户的身份与Web应用程序进行交互,从而对数据进行访问和操作。手工…

    database 2023年5月22日
    00
  • 优化SQL Server的内存占用之执行缓存

    优化SQL Server的内存占用之执行缓存可以提高数据库的性能和可用性,提升用户的体验。下面是一些优化执行缓存的攻略: 1. 配置最佳实践 SQL Server执行缓存依靠内存工作,要使它正常运行,需要设置正确的最佳实践,例如: 将最大服务器内存限制设置到物理内存的70%-80%。 将最小服务器内存限制设置到1GB或更高。 在SQL Server实例中启用…

    database 2023年5月21日
    00
  • Docker容器使用宿主机上的mongod/redis等服务详解

    下面我将详细讲解“Docker容器使用宿主机上的mongod/redis等服务”的完整攻略。 1. 使用桥接网络和host网络 Docker容器可以使用宿主机上的服务,有两种方式可以实现:使用桥接网络和使用host网络。 1.1 使用桥接网络 Docker默认会为每一个容器创建一个自己的网络。如果在容器内需要访问宿主机上的服务,可以通过将容器加入到宿主机上的…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部