既然是CentOS,那么我们就直接用yum来安装一下mysql好了!
1.先yum install mysql* 安装
如果安装mysql5.5那么需要yum install mysql55*
如果源没有mysql5.5则需要:
centos6
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
或者
centos5
rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm
如果想要5.1升级到5.5只需要先yum remove mysql* 然后yun install mysql55*即可。
2.由于是使用yum安装,那么我们安装后的mysql模块都是放在系统默认地址了,例如:/var/lib/mysql中式存放data文件的,/etc/my.cnf是mysql的全局配置文件
3.安装完以后我们需要创建一些mysql的用户,先直接用mysql命令登录mysql服务器,然后输入:GRANT ALL PRIVILEGES ON *.* TO username@('%'代表远程连接或者'localhost'代表本地连接) IDENTIFIED BY 'password' WITH GRANT OPTION; flush privileges; 不需要restart
这里需要注意的mysql5.5有些版本不支持GRANT ALL PRIVILEGES操作,此时需要使用其他方式创建新用户:
mysql> INSERT INTO mysql.user (Host,User,Password)
VALUES('%','jsczxy2',PASSWORD(123));
mysql> FLUSH PRIVILEGES
4.启动service mysqld start
5.如果这样设置了还是远程连接不上,则可能是iptables挡住了,使用service iptables stop暂时关闭即可连接。
6.如果乱码,请在/etc/my.cnf里面加default-character-set=utf8
PS:启动
MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令即可。
[root@test1 init.d]# /etc/init.d/mysql start
2、停止
/usr/bin/mysqladmin -u root -p shutdown
--------------------------------------分割线----------------------------------------------
在学习MySQL过程中,遇到了很多的麻烦,为了让初学者不再遇到相同的问题,所以我花了点时间写了本文。本人也是一个新手,还望多多指教!!
在安装MySQL之前,先来了解一下相关的配置文件
MySQL配置文件
MySQL发布的最新产品实际上超出了Red Hat Enterprise Linux所携带的版本。但是,稳定性和开放源代码可是很重要的因素,因此在操作系统上使用较早MySQL版本是有道理的。
有许多可以采用的配置文件,它们都被包含在mysql-server PRM程序中。还有一个默认的配置文件被包含在mysql PRM程序包中。
配置MySQL服务器是一个丰富而复杂的工作。在本文中,我只能肤浅的说一下各种选项。可以使用的MySQL配置文件共有5个。最后4个位于/usr/share/doc/mysql-server-*/目录中。
·/etc/my.cnf是默认的MySQL配置文件。应该对这个文件配置修改。它是为学习目的而设计的。
·my-small.cnf是为了小型数据库而设计的。不应该把这个模型用于含有一些常用项目的数据库。
·my-medium.cnf是为中等规模的数据库而设计的。如果你正在企业中使用RHEL,可能会比这个操作系统的最小RAM需求(256MB)明显多得多的物理内存。由此可见,如果有那么多RAM内存可以使用,自然可以在同一台机器上运行其它服务。
·my-large.cnf是为专用于一个SQL数据库的计算机而设计的。由于它可以为该数据库使用多达512MB的内存,所以在这种类型的系统上将需要至少1GB的RAM,以便它能够同时处理操作系统与数据库应用程序。
·my-huge.cnf是为企业中的数据库而设计的。这样的数据库要求专用服务器和1GB或1GB以上的RAM。
这些选择高度依赖于内存的数量、计算机的运算速度、数据库的细节大小、访问数据库的用户数量以及在数据库中装入并访问数据的用户数量。随着数据库和用户的不断增加,数据库的性能可能会发生变化。
我将逐个的说明这些配置文件。如果用户决定使用my-*.cnf文件之一,将首先需要把这个文件复制到/etc/my.cnf文件上。
由于这些原因,用户应该仔细观察数据库系统的性能。如果发现问题,可能需要增加更多的RAM,或者把数据库迁移到一个含有附加资源(比如多个CPU)的系统上。
提示:数据库变得非常大。把一个SQL数据库目录配置在一个专用分区上可能更有道理。虽然一个不断增长的数据库可能会占满整个分区,但它至少不会吞掉RHEL运行所必需的磁盘空间。
/etc/my.cnf文件
默认是/etc/my.cnf文件。它包含6条命令,并且这6条命令被组织在3个配置段中。这些配置段与Samba配置文件中的配置段相似,并且含有功能组名称和相关的命令。本文将逐行的说明这个文件的默认版本。如果用户进行了任何修改,将需要确保MySQL启动脚本(即/etc/rc.d /init.d/mysqld)中的命令一致。
[mysqld]
在这个配置段之内,将会看到与MySQL守护进程相关的命令。
datadir=/var/lib/mysql
MySQL服务器把数据库存储在由datadir变量所定义的目录中。
Socket=/var/lib/mysql/mysql.sock
MySQL套接字把数据库程序局部的或通过网络连接到MySQL客户。
提示:MySQL被配置成使用InnoDB存储器引擎。如果用户在自己的系统上还没有一个InnoDB数据库,将需要给[mysqld]配置段添加skip-innodb语句。
[mysql.server]
在这个配置段之内,将会看到MySQL服务器守护进程有关的命令。这个配置段的较早期版本被命名为[mysql_server]。如果使用 MySQL4.X或MySQL4.X以上版本,将必须把这个配置段标题改成[mysql_server]。当启动MySQL服务时,它使用这个配置段中的选项。
user=mysql
与MySQL服务相关联的标准用户名是mysql。它应该是/etc/passwd文件的一部分;如果在这个文件中没有发现它,用户可能还没有安装Red Hat Enterprise Linux mysql-server RPM程序包。
basedir=/var/lib
这表示MySQL数据库的顶级目录。它充当MySQL系统上的一个根目录;这个数据库中的其它目录都是相对于这个目录。
[safe_mysqld]
这个配置段包含MySQL启动脚本所引用的命令。如果使用MySQL4.X或4.X以上版本,必须把这个配置段改成[mysqld_safe]。
err-log=/var/log/mysqld.log
这是MySQL所关联的错误被发送到的这个文件。如果使用MySQL4.X或4.X以上版本,必须使用log-error指令替换这条命令。
pid-file=/var/run/mysqld/mysqld.pid
最后,pid-file指令定义MySQL服务器在运作期间的进程标识符(PID)。如果MySQL服务器当前没有运行,这个文件应该不存在。
提示:用户可以配置与用户特定相关的MySQL配置文件;为此,只需给指定用户主目录中的.my.cnf隐含文件添加所选的配置命令即可。
my-samll-cnf
在本文中,将说明my-small-cnf配置文本中的所有命令。当回顾其它MySQL样本配置文件时,将参考本文所解释的各条命令和指令的含义。先从下面这个配置段开始分析该文件中的有效命令和指令:
[client]
这个配置把指令传递给与MySQL服务器相关的客户。
port=3306
MySQL所相关的标准TCP/IP端口是3306。如果需要修改这个端口号(可以增强安全),必须确保用于MySQL客户与服务器的所有相应配置文件中均修改这个号。
socket=/var/lib/mysql/mysql.sock
正像默认的/etc/my.cnf文件中所定义的那样,这是控制MySQL客户与服务器间通信的标准套接字文件。
[mysqld]
当启动MySQL服务器时,它由[mysqld]配置段中所定义的命令来控制。
port=3306
socket=/var/lib/mysql/mysql.sock
当然,与同一个MySQL数据库相关的客户与服务器需要使用相同的TCP/IP端口和套接字。
skip-locking
多个客户可能会访问同一个数据库,因此这防止外部客户锁定MySQL服务器。这个skip-locking命令是MySQL4.X或4.X以上版本中的skip-external-locking命令。
一般来说,如果正在使用MySQL4.X或4.X上以版本,这个set-variable指令没有必要带有这个列表中的这些命令。
set-variable=key_buffer=16k
这个缓冲区确实很小;如果一个数据库在一个文本文件中包含不止几百行数据,它将会超载这个缓冲区的容量。这个数据库可能不会超载一个文本文件地址簿的容量。如果这不只是一个供个人使用的数据库,这个限额很快就会被达到。假使那样的话,可能需要考虑与其它配置文件之一相关的那些限额。
set-variable=max_allowed_packet=1M
当然,与一个数据库相关的信息会增加到超出实际数据。在默认的情况下,如果该信息在一个服务器上超过1MB以上,MySQL将会产生一条错误信息。
set-variable=thread_stack=64k
这条指令限定用于每个数据库线程的栈大小。默认设置足以满足大多数应用。
set-variable=table_cache=4
用户可以限定一个数据库中打开表的数量;越小的限额(默认值是64)适合越小规模的数据库。
set-variable=sort_buffer=64k
在处理一个数据库时,用户可能需要内存中附加的缓冲区空间。
set-variable=net_buffer_length=2k
正如net_buffer_length指令所定义的,MySQL服务器还给传入的请求保留了空间。
server-id=1
一般来说,如果有一个MySQL主服务器,应该把它的server-id设置成1;应该把MySQL从属服务器的server-id设置成2;
[mysqldump]
用户可以在不同类型的SQL数据库之间传输数据,这由[mysqldump]配置段中的命令来控制。
quick
quick选项支持较大数据库的转储。
set-variable=max_allowed_packet=16M
当然,用来传输数据库表到其它数据库的max_allowed_packet大于客户与服务器之间的简单通信所使用的信息包。
[mysql]
no-auto-rehash
这个配置段设置启动MySQL服务的条件;在这种情况下,no-auto-rehash确保这个服务启动得比较快。
[isamchk]
[myisamchk]
像SQL这样的关系数据库用所谓的Indexed Sequential Access Method(索引顺序存取方法,简称ISAM)来处理。这两个配置段中的命令是相同的;这些命令与检查并修复数据库表的同名命令有关。
set-variable=key_buffer=8M
set-variable=sort_buffer=8M
在前面谈及MySQL服务器时,用户己经见过这些变量。它们在这里都比较大,以便支持数据库的较快速检查与修复。
[mysqlhotcopy]
interactive-timeout
正如[mysqlhotcopy]配置段所指定的,在一个数据库复制操作期间,连接会挂起。在默认情况下,interactive-timeout变量把一个数据传输的最大时间量设置为28800秒(8个小时)。
my-medium.cnf文件
与中等数据库相关的MySQL配置文件含有和my-small-cnf配置文件中一样的有效配置段。在[mysqld]配置段中,下面这些命令支持较大规模的服务器数据库:
set-variable=key_buffer=16M
set-variable=table_cache=64
set-variable=sort_buffer=512K
set-variable=net_buffer_length=8K
log-bin
一般来说,这个配置段中的命令支持服务器上的较大高速缓存与缓冲区长度。应该看到两条新命令。
set-variable=myisam_sort_buffer_size=8M
log-bin
myisam_sort_buffer_size命令允许MySQL索引数据库,第二条命令支持二进制日志记录方法。
[isamchk]
[myisamchk]
当然,这两个配置段中的缓冲区比用于数据库传输的缓冲区大,这个文件包含下面这些命令;它们发送消息到服务器和接收来自服务器的消息。
set-variable=read_buffer=2M
set-variable=write_buffer=2M
my-large.cnf文件
与较大型数据库相关的MySQL配置文件含有和my-samll-cnf配置文件中一样的有效配置段。在本文中,将比较my-large-cnf与my-medium-cnf样本文件中的各条命令。在[mysqld]配置段中,下面这些命令支持较大型的服务器数据库:
set-variable=key_buffer=256M
set-variable=table_cache=256
set-variable=sort_buffer=1M
set-variable=myisam_sort_buffer_size=64M
set-variable=net_buffer_length=8K
这个配置段中有3条附加的命令。record_buffer命令保存对一个数据库中不同表的扫描结果。thread_cache命令对多请求有用;空闲线程被高速缓存起来,进而允许新的搜索操作采用己有的线程。只要这防止搜索操作启动新的服务器进程,这就能减轻系统上的负荷。
set-variable=record_buffer=1M
set-variable=thread_cache=8
set-variable=thread_concurrency=8
thread_concurrency变量限定同时运行的线程数量。my-large.cnf样本文件建议用户应该把这个数量限定于本计算机上CPU数量的两倍;这个特定设置相当于4个CPU。
my-huge.cnf文件
my-huge.cnf文件含有和my-large.cnf配置文件中一样的命令。当然,分配给大多数指令的值比较大并适合较大型的数据库。
正如ww.mysql.com站点上所描述的,拥有大量数据库的组织,比如:google、Sabre和NASA都采用MySQL。虽然我们猜测这些公司所使用的命令不同于用户在my-huge.cnf文件中所看到的命令,但这至少让用户对MySQL企业级数据库有一个概念。
为了方便起见,本文所说的采用Red Hat Enterprise Linux 4.0所携带的版本,在终端中输入以下命令:
[root@tyc00n ~]#rpm –q mysql
会得到以下所显示的内容
mysql-4.1.7-4 RHEL4.1
这说明了在安装RHEL的时候,己经安装了MySQL。是不是己经安装了MySQL就可以运行了呢?接着再输入以下命令:
[root@tyc00n ~]# service mysqld start
显示如下:
mysqld:unrecognized service
说明了MySQL服务器还没有启动,还需要安装MySQL-Server程序包。其版本要与所携带的一致。如:MySQL-Server-4.1.7-4.i386.rpm。安装完成之后,重复执行之前的指令,会得到以下显示信息。
初始化MySQL数据库: [确定]
启动MySQL: [确定]
配置MySQL用户
在配置一个MySQL服务器时,需要配置该服务器上的用户。这些用户独立于Linux计算机上的用户和组。首先,需要为MySQL系统添加一个根用户。令人遗憾的是,需要在命令行上用明文形式添加与根用户相关的密码。
下面这个命令为MySQL系统创建一个根用户:
#mysqladmin –u root password i8oe66q
当然,还需要创建普通用户来访问这个MySQL系统。接着,需要使用根帐号登录到MySQL中,如下所示:
[root@tyc00n root]#mysql –u root –p
Enter password:
Welcome to the MySQL montor. Command end with; or \g.
Your MySQL connection id is 7 to server Version:4.1.7
Type ‘help;’ lr ‘\h’ for help.Type ‘\C’ to clean the buffer.
Mysql>;
提示:用户应该在直接登录到MySQL服务器中创建MySQL用户。除非使用一个SSH这样的安全协议,否则密码将用明文形式传递。此外,由于MySQL密码直接键入在命令行上,所以在创建MySQL用户时,避免让其它人站在旁边观看。
续……
相关推荐
在Linux环境中,特别是CentOS系统上,MySQL 8.0的离线安装是一个常见的需求,尤其是在没有网络连接或者网络环境不稳定的情况下。以下是如何利用提供的压缩包文件进行离线安装MySQL 8.0的详细步骤: 首先,我们看到...
### Linux学习之CentOS安装MySQL #### 一、MySQL简介 MySQL是一款广泛使用的关系型数据库管理系统,最初由瑞典MySQL AB公司开发,后被Sun Microsystems收购,最终成为Oracle公司的产品之一。MySQL因其开源特性、高...
MySQL安装教程提供了详细的步骤和指导,帮助用户在计算机上成功安装和设置MySQL数据库管理系统。MySQL是一种流行的开源关系型数据库,广泛应用于各种应用程序和网站的后端存储和管理。通过阅读MySQL安装教程,用户...
本教程将详细介绍如何在CentOS 7上完整地安装和配置MySQL 5.7。 一、安装MySQL 5.7 1. 更新系统:首先确保你的CentOS 7系统是最新的,运行`sudo yum update`。 2. 安装依赖:MySQL 5.7的安装需要一些依赖包,执行...
在使用CentOS操作系统的过程中,我们可能会遇到这样的问题:在安装某些软件时,系统会报错“/lib/ld-linux.so.2: bad ELF interpreter”,这种错误通常发生在64位系统上尝试运行或安装32位程序时。本文将详细介绍这...
本文详细介绍了在CentOS环境下安装MySQL 5.7的过程,包括创建MySQL用户、安装MySQL软件包、初始化MySQL、修改配置文件、启动服务、管理用户与权限等多个步骤。通过这些步骤,您可以顺利地在CentOS上部署并运行MySQL...
本文将详细介绍如何在CentOS 6.5上进行MySQL 5.6的一键安装过程,包括必要的环境准备、安装步骤、配置优化以及安全设置。 一、环境准备 在开始安装之前,确保你的CentOS 6.5系统已经更新到最新,运行以下命令进行...
### Linux CentOS离线安装 MySQL Glibc 版/解压版详解 #### 一、环境准备与检查 在开始安装 MySQL 之前,确保你的 CentOS 系统满足以下条件: 1. **确定系统架构**:首先确认你的 CentOS 系统是 32 位还是 64 位...
CentOS 6.9 是一个稳定且广泛使用的 Linux 发行版,本文将详细介绍如何在 CentOS 6.9 版本上使用 yum 命令安装 MySQL。 安装 MySQL 在安装 MySQL 之前,需要检查是否已经安装了 MySQL。如果已经安装,可以卸载已经...
在本教程中,我们将详细介绍如何在 CentOS Linux release 7.9.2009 上安装 MySQL 5.7.37。首先,我们要确保系统中没有预装的 MariaDB 或其他 MySQL 版本,因为它们可能与新安装的 MySQL 冲突。 1. 卸载预装的 ...
可以使用以下命令检测系统是否已经安装了 MySQL: `rpm -qa | grep mysql` 如果系统已经安装了 MySQL,我们可以使用以下命令删除它: `rpm -e mysql` 安装 MySQL 的 yum 源 在安装 MySQL 5.6 之前,我们需要...
6. 安装 MySQL:使用 rpm 命令安装 MySQL 的 common、libs、client、server 四个组件。 知识点:MySQL 的安装需要安装四个组件:common、libs、client、server,使用 rpm 命令可以实现。 7. 初始化 MySQL 数据库:...
Centos7 安装 MySQL 数据库是 Linux 服务器中的一项基本操作。MySQL 是一个开源的关系数据库管理系统,广泛应用于 Web 应用程序中。下面将详细介绍 Centos7 安装 MySQL 数据库的过程。 1. 下载和安装 MySQL 首先,...
centos7.9 自动安装mysql8.0.33,附带脚本
在Linux系统中,CentOS 7是最常用的发行版之一,而MySQL是世界上最流行的开源关系型数据库管理系统。本文将详细介绍如何在CentOS 7上安装MySQL 5.7,基于提供的安装包进行操作。 首先,我们需要了解MySQL的组件结构...
对于Linux系统,尤其是CentOS 7这样的企业级发行版,MySQL的安装和管理至关重要。本文将详细讲解如何在CentOS 7上离线进行MySQL8的一键自动安装。 首先,离线安装意味着我们需要提前下载MySQL8的安装包,并通过本地...
安装之前下载的RPM包,这个包会自动添加MySQL的YUM仓库到CentOS 7中,使得可以轻松地通过YUM命令安装MySQL: ```bash yum -y install mysql57-community-release-el7-10.noarch.rpm ``` 使用`-y`参数可以自动...
用于在CentOS8中安装mysql8.3.0的安装包
在压缩包文件"centos7安装Mysql.txt"中,可能会包含更具体的安装步骤和解决报错的详细方法。通常,这样的文本文件会提供更详尽的故障排除指南,包括错误日志分析、环境变量设置、特定问题的解决方案等。 总之,正确...
在本文中,我们将详细讲解如何在Linux CentOS7系统上安装MySQL 8.0,这是一个针对初学者的详尽教程,确保每一步都有清晰的指导。 首先,你需要访问MySQL的官方网站下载适合CentOS 7的安装包。地址是:...