`

Linux上安装MySQL

阅读更多

1,下载MYSQL安装程序

地址:http://www.mysql.com/downloads/mysql/

选择你所安装环境下的服务器:

分别下载

SERVER程序:MySQL-server-community-5.1.44-1.rhel5.i386.rpm

CLIENT工具:MySQL-client-community-5.1.44-1.rhel5.i386.rpm

 

2,通过本地SSH Secure工具将文件上传到服务器

1)安装服务器端

  在有两个rmp文件的目录下运行如下命令:

  [root@test1 local]# rpm -ivh MySQL-server-community-5.1.44-1.rhel5.i386.rpm

  显示如下信息:

  Preparing... ########################################### [100%]

  1:MySQL-server ########################################### [100%]

 

2)测试是否安装成功

   [root@test1 local]# netstat -natpl

   显示3306端口开放表示服务安装成功

 

3)安装客户端工具

   [root@test1 local]# rpm -ivh MySQL-client-community-5.1.44-1.rhel5.i386.rpm

  Preparing...    ########################################### [100%]

  1:MySQL-client  ########################################### [100%]

  显示安装完成

4)测试连接

   [root@test1 local]# mysql

   出现如下提示符

   mysql>

   表示登陆成功。

   以上登陆情况是在没有设置密码的情况下登陆,在设置防火墙前注意对MYSQL设置密码

 

5)对MYSQL用户ROOT设置密码

   [root@test1 local]# /usr/bin/mysqladmin -u root password 123456

   123456只是事例密码,实际配置过程中注意相关密码复杂性要求

 

6)  mysql用户设置远程访问权限

   方法1,改表法。可能是你的帐号不允许从远程登陆,只能在localhost

   这个时候只要在localhost的那台电脑,登入mysql后,更改 mysql 数据库里的 user 表里的 host 项,从“localhost”改称“%

   mysql -u root -p123456

   mysql>use mysql;

   mysql>update user set host = ‘%’ where user = ‘root’;

   mysql>select host, user from user;

   mysql>FLUSH   PRIVILEGES

     

 

   方法2,授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

 

   mysql>GRANT ALL PRIVILEGES ON *.* TO myuser@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

   mysql>FLUSH   PRIVILEGES;

 

   如果你想允许用户myuserip10.0.0.233的主机连接到mysql服务器,并使用mypassword作为密码

myql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'10.0.0.233' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

   myql>FLUSH   PRIVILEGES;

 

7) LINUX系统IPTABLES配置,使外网用户能够访问MYSQL

   修改/etc/sysconfig下的iptables文件;

   原文件内容如下:

   [root@linux1 sysconfig]# vi iptables

   # Firewall configuration written by system-config-securitylevel

   # Manual customization of this file is not recommended.

   *filter

   :INPUT ACCEPT [0:0]

   :FORWARD ACCEPT [0:0]

   :OUTPUT ACCEPT [0:0]

   :RH-Firewall-1-INPUT - [0:0]

   -A INPUT -j RH-Firewall-1-INPUT

   -A FORWARD -j RH-Firewall-1-INPUT

   -A RH-Firewall-1-INPUT -i lo -j ACCEPT

   -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT

   -A RH-Firewall-1-INPUT -p 50 -j ACCEPT

   -A RH-Firewall-1-INPUT -p 51 -j ACCEPT

   -A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT

   -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT

   -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT

   -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

   -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

   -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

    COMMIT

    在原文件内容下插入

   -A RH-Firewall-l-INPUT -m tcp -m tcp --dport 3306 -j ACCEPT

    注:插入内容位置不能在最后一行应在倒数第三行

    修改后内容如下:

    [root@linux1 sysconfig]# vi iptables

    # Firewall configuration written by system-config-securitylevel

    # Manual customization of this file is not recommended.

    *filter

    :INPUT ACCEPT [0:0]

    :FORWARD ACCEPT [0:0]

    :OUTPUT ACCEPT [0:0]

    :RH-Firewall-1-INPUT - [0:0]

     -A INPUT -j RH-Firewall-1-INPUT

     -A FORWARD -j RH-Firewall-1-INPUT

     -A RH-Firewall-1-INPUT -i lo -j ACCEPT

     -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT

     -A RH-Firewall-1-INPUT -p 50 -j ACCEPT

     -A RH-Firewall-1-INPUT -p 51 -j ACCEPT

     -A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT

     -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT

     -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT

     -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

     -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

     -A RH-Firewall-1-INPUT -m tcp -m tcp --dport 3306 -j ACCEPT

     -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

      COMMIT

      重启IPTABLES

      [root@linux1 sysconfig]# sevice iptables restart

      完成安装

      

 

 

MSYQL安装目录结构

1、数据库目录

  /var/lib/mysql/

 

  2、配置文件

  /usr/share/mysqlmysql.server命令及配置文件)

 

  3、相关命令

  /usr/bin(mysqladmin mysqldump等命令)

 

  4、启动脚本

  /etc/rc.d/init.d/(启动脚本文件mysql的目录)

 

 

2,数据库目录转移

  1,在根目录下新建文件夹

     [root@linux1 ~]# mkdir mysqldata

  2, 停止MYSQL服务器

     service mysql stop

     复制/var/lib/mysql下所有文件到/mysqldata

     查看原数据库文件夹下各文件权限默认为mysql

  3, 更改/mysqldata下各文件权限

      [root@linux1 ~]# chgrp -R mysql ./mysqldata && chown -R mysql ./mysqldata

     检查权限

        [root@linux1 /]# ls -l

  4, 配置my.cnf文件

     复制并更改文件到/etc目录下

    [root@linux1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

  5, 修改my.cnf

# The MySQL server

[client]

#password       = your_password

port            = 3306

#  socket               = /var/lib/mysql/mysql.sock

socket                  =/mysqldata/mysql.sock  --增加此行,并配置数据库目录

    [mysqld]

    port            = 3306

    #  socket       = /var/lib/mysql/mysql.sock

    socket         =/mysqldata/mysql.sock   --增加此行,并配置数据库目录

 

 6, 修改启动文件

    修改/etc/rc.d/init.d/mysql

    找到datadir位置,修改内容如下

    # Set some defaults

    pid_file=

    server_pid_file=

    use_mysqld_safe=1

    user=mysql

    if test -z "$basedir"

then

    basedir=/

    bindir=/usr/bin

    if test -z "$datadir"

    then

#   datadir=/var/lib/mysql --修改前内容

    datadir=/mysqldata --修改后内容

    fi

    sbindir=/usr/sbin

 

 7,启动MYSQL服务

    [root@linux1 mysql]#service mysql start

 

:  1,MYSQL更改数据库目录后相关错误日志文件存为/mysqldata下的.err文件

    2,更改目录完成后可能出现SELINUX报错,本人建议不要关闭SELINUX,解决办法为:

     

    使用ls -laZ查看原数据库目录及相关文件的策略属性,通过chcon修改移动后的文件策略属性:例如:

    [root@linux1 mysql]#chcon -t mysqld_db_t /mysqldata

    3,整个移动数据库过程中一定要注意权限也要跟着移动

分享到:
评论

相关推荐

    Linux下安装mysql

    ### Linux 下安装 MySQL 在 Linux 系统中安装 MySQL 数据库是一项常见的任务,尤其是在搭建 Web 服务器或开发环境中。本文将详细介绍如何在 Linux 系统上安装 MySQL,并提供相关的配置和管理指南。 #### 准备工作 ...

    linux 下安装mysql

    ### Linux下安装MySQL数据库详细步骤及关键知识点 在Linux环境下安装MySQL数据库是一项常见的任务,尤其对于网站开发者和系统管理员来说,掌握这一技能至关重要。本文将详细介绍如何在Linux系统下安装MySQL数据库,...

    Linux下安装Mysql

    而“Linux mysql安装教程”则意味着我们将遵循一套步骤来完成安装过程。 在标签中,“mysql rpm包”再次强调了我们使用RPM格式的包来安装MySQL,“安装教程”意味着我们将提供详细的步骤指导。 在提供的压缩包子...

    linux下安装mysql服务器

    Linux 下安装 MySQL 服务器 Linux 下安装 MySQL 服务器是指在 Linux 操作系统中安装和配置 MySQL 数据库服务器的过程。MySQL 是一种关系型数据库管理系统,广泛应用于 Web 应用程序中。 知识点: 1. 安装 MySQL ...

    Linux下安装MYSQL

    ### Linux下安装MySQL 在Linux环境下安装MySQL是一个常见的任务,对于开发者、系统管理员以及数据库管理员而言至关重要。本文将详细介绍在Linux环境下安装MySQL的过程,并提供一些实用的技巧与建议。 #### 准备...

    Linux下安装mysql操作指南

    ### Linux下安装MySQL操作指南详解 #### 一、准备工作 在进行MySQL的安装之前,我们需要做好一系列的基础准备工作,包括操作系统的准备、安装包与依赖包的准备、创建MySQL用户和组以及配置环境变量等。 ##### 1.1...

    linux下安装mysql

    ### Linux 下安装 MySQL 在 Linux 系统中安装 MySQL 数据库是一项常见的任务,尤其是在搭建 Web 服务器时。本文将详细介绍如何在 CentOS 操作系统上安装 MySQL 5.5,并进行必要的配置。 #### 一、安装 cmake 在...

    Linux-Linux下安装MySQL

    Linux下安装MySQL的过程主要涉及以下几个步骤: 1. 系统配置信息的准备:首先需要了解当前Linux系统的详细配置信息,包括系统版本、当前用户、硬盘挂载情况等。这一步骤是为了确保安装MySQL所需的系统环境和磁盘...

    linux下安装MySQL

    MySQL-server-community-5.1.60-1.rhel4.i386.rpm,linux下安装MySQL的安装包

    Linux 下 安装 mysql

    ### Linux下安装MySQL详细步骤与知识点 #### 一、引言 在Linux环境下安装MySQL数据库是一项常见的任务,尤其是在CentOS这样的服务器操作系统上。本文将详细介绍如何在CentOS系统上安装MySQL,并解决安装过程中可能...

    linux一键安装mysql

    总结来说,"Linux一键安装MySQL"是一个通过自动化脚本简化MySQL安装和配置过程的方法,极大地节省了系统管理员的时间和精力。正确执行上述步骤,你就能在Linux环境中快速部署并开始使用MySQL数据库。不过,值得注意...

    Linux下安装MySQL.docx

    Linux 下安装 MySQL Linux 是一个开源的操作系统, MySQL 是一个开源的关系数据库管理系统。在 Linux 系统中安装 MySQL 是一个非常重要的步骤。本文将一步步指导您如何在 Linux 系统中安装 MySQL。 查找以前是否...

    linux上安装mysql

    周么在家里安装mysql,一直报错,后来找到原因是安装的版本不正确,没有正确卸载,对应版本无法安装,最后卸载好了,再安装。。。

    在Linux下安装Mysql(非root)

    Linux 下非 Root 用户安装 Mysql 在 Linux 操作系统中安装 Mysql 数据库可以通过多种方式实现,包括使用源代码编译安装和二进制安装。对于非 Root 用户来说,安装 Mysql 可能会遇到一些权限问题,但是通过正确的...

    Linux下安装MySQL.pdf

    【Linux下安装MySQL】 在Linux操作系统中安装MySQL数据库是一个必要的步骤,特别是在开发和管理Web应用程序时。本教程将详述如何在Linux环境下卸载旧版本的MySQL,以及如何正确安装和配置新版本的MySQL。 首先,...

    Linux下安装mySQL

    ### Linux下安装MySQL知识点详述 #### 一、下载与准备RPM包 在Linux环境下安装MySQL,首先需要获取MySQL的RPM包。RPM(Red Hat Package Manager)是一种用于管理软件包的工具,广泛应用于Red Hat Enterprise Linux...

Global site tag (gtag.js) - Google Analytics