一台linux服务器怎么安装多个mysql数据库并配置主从

一台linux服务器怎么安装多个mysql数据库并配置主从,第1张

1、关闭Liunx系统的防火墙,如果忘了,你下面的测试连接必定会失败,切记,切记,切记。
2、yum安装lrzsz和cmake
yum -y install lrzsz;
yum -y install cmake;
首先熟悉MySql数据库,很多人都是直接安装原生版的MySql数据库(就是官网上下载的数据库安装包),也有人用的是MySql的衍生版数据库,如percona,我用的就是这种,下面我会分别说明原生版和衍生版MySql数据库的安装和主从配置。

选择数据库服务器的五个原则:
1)高性能原则
保证所选购的服务器,不仅能够满足运营系统的运行和业务处理的需要,而且能够满足一定时期业务量的增长。一般可以根据经验公式计算出所需的服务器TpmC值(Tpmc是衡量计算机系统的事务处理能力的程序),然后比较各服务器厂商和TPC组织公布的TpmC值,选择相应的机型。同时,用服务器的市场价/报价除去计算出来的TpmC值得出单位TpmC值的价格,进而选择高性能价格比的服务器。
结论:服务器处理器性能很关键,CPU的主频要高,要有较大的缓存

2)可靠性原则
可靠性原则是所有选择设备和系统中首要考虑的,尤其是在大型的、有大量处理要求的、需要长期运行的系统上。考虑服务器系统的可靠性,不仅要考虑服务器单个节点的可靠性或稳定性,而且要考虑服务器与相关辅助系统之间连接的整体可靠性,如:网络系统、安全系统、远程打印系统等。在必要时,还应考虑对关键服务器采用集群技术,如:双机热备份或集群并行访问技术,甚至采用可能的完全容错机。
结论:服务器要具备冗余技术,同时像硬盘、网卡、内存、电源此类设备要以稳定耐用为主,性能其次。
3)可扩展性原则

保证所选购的服务器具有优秀的可扩展性原则。因为服务器是所有系统处理的核心,要求具有大数据吞吐速率,包括:I/O速率和网络通讯速率,而且服务器需要能够处理一定时期的业务发展所带来的数据量,需要服务器能够在相应时间对其自身根据业务发展的需要进行相应的升级,如:CPU型号升级、内存扩大、硬盘扩大、更换网卡、增加终端数目、挂接磁盘阵列或与其他服务器组成对集中数据的并发访问的集群系统等。这都需要所选购的服务器在整体上具有一个良好的可扩充余地。一般数据库和计费应用服务器在大型计费系统的设计中就会采用集群方式来增加可靠性,其中挂接的磁盘存储系统,根据数据量和投资考虑,可以采用DAS、NAS或SAN等实现技术。
结论:服务器的IO要高,否则在CPU和内存都是高性能的情况下,会出现瓶颈。除此之外,服务器的扩展性要好,为的是满足企业在日后发展的需要。

4)安全性原则
服务器处理的大都是相关系统的核心数据,其上存放和运行着关键的交易和重要的数据。这些交易和数据对于拥有者来说是一笔重要的资产,他们的安全性就非常敏感。服务器的安全性与系统的整体安全性密不可分,如:网络系统的安全、数据加密、密码体制等。服务器需要在其自身,包括软硬件,都应该从安全的角度上设计考虑,在借助于外界的安全设施保障下,更要保证本身的高安全性。
结论:首先从服务器的材料上来说要具备高硬度高防护性等条件,其次服务器的冷却系统和对环境的适应能力要强,这样才能够在硬件上满足服务器安全的要求。

5)可管理性原则
服务器既是核心又是系统整体中的一个节点部分,就像网络系统需要进行管理维护一样,也需要对服务器进行有效的管理。这需要服务器的软硬件对标准的管理系统支持,尤其是其上的 *** 作系统,也包括一些重要的系统部件。
结论:尽量选择支持系统多的服务器,因为服务器兼容的系统越多,你就可以拥有更大选择空间。

如何在linux下安装mysql数据库并配置

关于本文

本文将以MySQL 5051为例,以CentOS 5为平台,讲述MySQL数据库的安装和设置。

2 关于MySQL

MySQL是最流行的开源SQL数据库管理系统,它由MySQL AB开发、发布和支持。MySQL AB是一家由MySQL开发人员创建的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。MySQL是MySQL AB的注册商标。

MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。

MySQL的官方发音是“My Ess Que Ell”,而不是“My sequel”。但是你也可以使用“My sequel”和其他的方言。

MySQL网站(>

MySQL具有如下特点或特性:

MySQL是一个数据库管理系统;

MySQL是一个关系数据库管理系统;

MySQL是开源的;

MySQL服务器是一个快的、可靠的和易于使用的数据库服务器;

MySQL服务器工作在客户/服务器或嵌入系统中;

有大量的MySQL软件可以使用。

3 MySQL的安装

MySQL有两种安装方式:源码包安装和二进制包安装。这两种方式各有特色:二位制包安装不需编译,针对不同的平台有经过优化编译的不同的二进制文件以及包格式,安装简单方便;源码包则必须先配置编译再安装,可以根据你所用的主机环境进行优化,选择最佳的配置值,安装定制更灵活。下面分别介绍这两种安装方式。

31 源码包方式安装

311 在linux系统中添加运行Mysql的用户和组

/usr/sbin/groupadd mysql

/usr/sbin/useradd -d /var/lib/mysql -s /sbin/nologin -g mysql mysql

312 下载最新稳定发行版(GA)的MySQL软件

访问MySQL网站>

wget >

313 解压缩下载的源码包

首先建立一个工作目录( 笔者建议的目录为/usr/local/src/mysql ) :

mkdir -p /usr/local/src/mysql

将下载的源码包移至工作目录:

mv  mysql-5051targz  /usr/local/src/mysql

进入工作目录并用tar命令解压源码包:

cd  /usr/local/src/mysql

tar zxvf  mysql-5051targz

命令执行结束后,当前工作目录下将生成一个新的子目录mysql-5051,此目录下即为mysql的源码文件。

314 配置Makefile文件

进入MySQL源码目录:

cd mysql-5051

执行下面的命令可查看可配置选项:

/configure --help

本文使用的配置命令格式如下:

CC=gcc CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti" /configure --prefix=/usr/local/mysql --enable-thread-safe-client --enable-assembler --with-big-tables --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static  --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=complex

配置选项说明:

CC:C编译器的名称(用于运行configure),本文示例为gcc

CFLAGS:C编译器的标志(用于运行configure),本文示例为-O3,指定优化级别为3

CXX:C++编译器的名称(用于运行configure),本文示例为gcc

CXXFLAGS:C++编译器的标志(用于运行configure)

--prefix:指定安装目录,本文示例为/usr/local/mysql

--localstatedir:指定默认数据库文件保存目录,默认为安装目录下的var目录

--enable-thread-safe-client:编译线程安全版的MySQL客户端库

--enable-assembler:使用一些字符函数的汇编版本

--with-client-ldflags:客户端链接参数,本文示例为指定静态编译mysql客户端

--with-mysqld-ldflags:服务器端链接参数,本文示例为指定静态编译mysql服务器

--with-big-tables:在32位平台上支持大于4G行的表

--with-charset:指定默认字符集。mysql默认使用latin1(cp1252)字符集,可以使用此选项更改。字符集可以是big5、cp1251、cp1257、czech、danish、dec8、dos、euc_kr、gb2312、gbk、german1、hebrew、hp8、hungarian、koi8_ru、koi8_ukr、latin1、latin2、sjis、swe7、tis620、ujis、usa7或win1251ukr。

--with-collation:指定默认校对规则。mysql默认使用latin1_swedish_ci校对规则,可以使用此选项更改。

--with-extra-charsets:服务器需要支持的字符集,有三种可能的值:空格间隔的一系列字符集名;complex ,包括不能动态装载的所有字符集;all,将所有字符集包括进二进制。本文示例为complex。

注意:要想更改字符集和校对规则,要同时使用--with-charset和--with-collation选项。 校对规则必须是字符集的合法校对规则。(在mysql中使用SHOW COLLATION语句来确定每个字符集使用哪个校对规则)。

315 编译源代码

执行下面的命令编译源代码:

make

316 安装

执行下面的命令安装mysql到目标路径:

make install

317 复制默认全局启动参数配置文件到/etc目录

源码方式安装需要手动复制配置文件,配置模板位于源码树的support-files目录,有my-smallcnf、my-mediumcnf、my-largecnf、my-hugecnf四个,选择跟你的环境相接近的一个复制到/etc目录,并做适当修改。关于mysql配置文件的详细信息请参阅笔者的其它文章或是mysql官方文档。

本文示例选择my-mediumcnf,执行下面的命令将其复制到/etc目录:

cp /support-files/my-mediumcnf  /etc/mycnf

318 初始化授权表

执行下面的命令初始化授权表:

/scripts/mysql_install_db --user=mysql

319 更改mysql数据目录属主和权限

默认数据库文件保存目录为安装目录下的var目录,执行configure命令时可通过--localstatedir参数指定不同的目录,本文示例为默认位置。

chown -R mysqlmysql /usr/local/mysql/var

chmod -R 700 /usr/local/mysql/var

3110 设置开机自启动服务控制脚本

执行下面的命令复制启动脚本到资源目录:

cp /support-files/mysqlserver /etc/rcd/initd/mysqld

执行下面的命令增加mysqld服务控制脚本执行权限:

chmod +x /etc/rcd/initd/mysqld

执行下面的命令将mysqld服务加入到系统服务:

chkconfig --add mysqld

执行下面的命令检查mysqld服务是否已经生效:

chkconfig --list mysqld

命令输出类似下面的结果:

mysqld          0:off 1:off 2:on 3:on 4:on 5:on 6:off

表明mysqld服务已经生效,在2、3、4、5运行级别随系统启动而自动启动,以后可以使用service命令控制mysql的启动和停止。

启动mysqld服务:

service mysqld start

停止mysqld服务:

service mysqld stop

执行下面的命令关闭开机自启动:

chkconfig mysqld off

执行下面的命令可以改变开机自启动的运行级别为3、5:

chkconfig --level 35 mysqld on

3111 将mysql的bin目录加入PATH环境变量

编辑/etc/profile文件:

vi /etc/profile

在文件最后添加如下两行:

PATH=$PATH:/usr/local/mysql/bin

export PATH

执行下面的命令使所做的更改生效:

/etc/profile

32 二进制包方式安装

321 从安装媒体安装

Mysql二进制包已经包含在CentOS 5的安装媒体中,可以直接从安装媒体中安装下面三个rpm包:

mysql-5022-2101i386rpm

mysql-devel-5022-2101i386rpm

mysql-server-5022-2101i386rpm

不同的版本文件名有所不同,请注意区分。

执行下面的命令安装:

rpm -iUvh  mysql-5022-2101i386rpm

rpm -iUvh  mysql-devel-5022-2101i386rpm

rpm -iUvh  mysql-server-5022-2101i386rpm

322 通过yum安装

如果你安装的机器此时可以连接到互联网,笔者建议使用yum命令来简化安装过程:

yum install mysql-server mysql-devel mysql

yum将自动从centos的镜像站点查找你指明的软件的最新二进制包,并检查软件包依赖关系,安装软件的同时自动安装其依赖的软件包。

323 从mysql网站下载最新稳定版本的二进制包安装

通过CentOS安装媒体或yum安装的二进制包版本会落后于mysql开发者网站发布的版本,可以从mysql网站下载安装最新稳定版本的mysql。

访问MySQL网站>

在linux系统下用下面的命令下载:

wget >

wget >

wget >

wget >

wget >

执行下面的命令安装:

rpm -iUvh MySQL-server-community-5045-0rhel5i386rpm

rpm -iUvh MySQL-client-community-5045-0rhel5i386rpm

rpm -iUvh MySQL-devel-community-5045-0rhel5i386rpm

rpm -iUvh MySQL-shared-community-5045-0rhel5i386rpm

rpm -iUvh MySQL-shared-compat-5045-0rhel5i386rpm

4 MySQL的配置

41 目录结构

411 源码包方式安装目录结构

源码包方式安装时通常是在314节中configure命令的--prefix选项指定的目录中建立如下的目录结构,特殊指定的目录除外:

/bin                               #mysql用户可执行文件目录

/include/mysql           #mysql C头文件目录

/info                              #mysql 信息文件目录

/lib/mysql                    #mysql库文件目录

/libexec                        #mysql后台daemon程序目录

/man                             #mysql联机帮助文档目录

/mysql-test                  #mysql测试程序目录

/share/mysql              #mysql公用文件目录,包括字符集、配置文件模板、启动脚本、初始化SQL文件等

/sql-bench                   #mysql压力测试程序目录

/etc/mycnf                    #mysql配置文件

/etc/rcd/initd/mysqld #mysqld服务启动脚本

412 RPM二进制包方式安装目录结构

二进制包方式安装时使用系统软件默认目录结构 :

/usr/bin                     #mysql用户可执行文件目录

/usr/libexec              #mysql后台daemon程序目录

/usr/lib/mysql          #mysql库文件目录

/usr/lib64/mysql     #如果为64系统,mysql 64位库文件目录

/usr/share/doc        #mysql文档目录

/usr/share/info        #mysql信息文件目录

/usr/share/man      #mysql联机帮助文档目录

/usr/share/mysql    #mysql字符集目录

/usr/include/mysql #mysql C头文件目录

/var/log                     #mysqld服务日志文件目录

/var/run/mysqld      #mysqld服务运行状态目录

/var/lib/mysql          #mysql数据文件目录

/etc/mycnf               #mysql配置文件

/etc/rcd/initd/mysqld  #mysqld服务启动脚本

42 配置文件

Linux系统下,mysql的配置参数文件为mycnf,一般按下面的顺序查找此文件:/etc目录、mysql安装目录、mysql数据目录。配置模板位于源码树的support-files目录,有my-smallcnf、my-mediumcnf、my-largecnf、my-hugecnf四个,关于mysql配置文件的详细信息请参阅笔者的其它文章或是mysql官方文档。

43 启动mysqld服务

执行下面的命令启动mysql:

service mysqld start

43 设置mysql帐号

mysql安装后默认生成两个帐号:一个是root,未设置密码,可以从本机登录到mysql;另一个是匿名帐号,无帐号名、无密码,可以从本机登录,未提供用户名的连接都将假定为此帐号。这样的设置存在着安全隐患,按下面的步骤进行更改。

以root帐号连接到mysql服务器:

mysql -u root

如果提示找不到mysql文件,请尝试使用绝对路径,如本文示例为:

/usr/local/mysql/bin/mysql -u root

命令成功执行后将进入到mysql命令提示符下:

mysql>

(以下命令均在mysql命令提示符下执行)

改变当前数据库为mysql:

use mysql

设置从本地主机登录的root帐号密码:

set password for root@localhost=password('your password');

或:

update user set password=password('your password') where user='root' and host='localhost';

删除匿名帐号:

delete from user where user='' ;

删除密码为空的帐号:

delete from user where password='';

删除允许非localhost主机登录的帐号:

delete from user where host<>'localhost' ;

执行下面的命令使更改生效:

flush privileges ;

执行下面的命令退出mysql命令行:

quit

或:

/q

5 结束语

至此,Mysql基本安装完毕。希望本文能对初学者有所帮助。

mysql -u用户名 -h主机名 -p
前提是服务器的mysql上有该用户,以及对应的IP
可登入mysql服务器上执行
grant all on test to 用户名@‘客户机IP’ identified by '密码' ;
flush privileges; #刷新权限表,让所做修改生效
上面指令的意思是 将test这个数据库的全部内容以及全部的 *** 作权限赋权给从特定IP上登入到本服务器的用户。

用MSI安装包安装
根据自己的 *** 作系统下载对应的32位或64位安装包。按如下步骤 *** 作:
第一步: 安装许可
双击安装文件,在如下图所示界面中勾选“I accept the license terms”,点击“next”。
第二步: 选择设置类型
如下图所示,有5种设置类型:
Developer Default:安装MySQL服务器以及开发MySQL应用所需的工具。工具包括开发和管理服务器的GUI工作台、访问 *** 作数据的Excel插件、与Visual Studio集成开发的插件、通过NET/Java/C/C++/OBDC等访问数据的连接器、例子和教程、开发文档。
Server only:仅安装MySQL服务器,适用于部署MySQL服务器。
Client only:仅安装客户端,适用于基于已存在的MySQL服务器进行MySQL应用开发的情况。
Full:安装MySQL所有可用组件。
Custom:自定义需要安装的组件。
MySQL会默认选择“Developer Default”类型,个人建议选择纯净的“Server only”类型,减少对工具的依赖可以更深入的学习和理解MySQL数据库。大家可根据自己的需求选择合适的类型,这里选择“Server only”后点击“next”。
第三步: 安装
进入到安装步骤的界面,如果第二步选择的是其他类型也只是点击“next”即可进入到该步骤,点击“Execute”。
安装完成后点击“next”直到进入配置页面。
第四步: 配置
进入到配置页面。
点击Content Type的下拉框,显示有三种类型:
Development Machine:开发机器,MySQL会占用最少量的内存。
Server Machine:服务器机器,几个服务器应用会运行在机器上,适用于作为网站或应用的数据库服务器,会占用中等内存。
Dedicated Machine:专用机器,机器专门用来运行MySQL数据库服务器,会占用机器的所有可用内存。
根据自己的用途选择相应的类型配置,我这里为了后面做高并发性能测试便选择“Server Machine”类型。
选择好配置类型后进行连接配置。
常用的是TCP/IP连接,勾选该选项框,默认端口号是3306,可在输入框中更改。若数据库只在本机使用,可勾选“Open Firewall port for network access”来打开防火墙,若需要远程调用则不要勾选。
下面的“Named Pipe”和“Shared Memory”是进程间通信机制,一般不勾选。
“Show Advanced Options”用于在后续步骤配置高级选项,为尽可能多的了解MySQL的可配置项,这里勾选该选项框。点击“next”进入下一步。
第五步: 账户配置
进入到MySQL的账户和角色配置界面。
root账户拥有数据库的所有权限,在密码框输入自己设置的密码。数据库在开发和维护过程中为了安全性和便于管理会为不同的用户授予相应 *** 作权限的账户密码,点击“Add User”按钮,在d出的会话框中设置不同权限等级的账户。
Host表示能连接到该数据库的主机地址,可设置为本地(localhost/127001)、一个外部IP(如21817224228)、一个外部网段(如21817224)或者所有主机(%)。
Role表示该账户的角色。
不同的角色有着不同的权限等级,暂时可不做配置,后续会在用户权限管理章节详细讲解。
第六步: 配置Windows Service
将MySQL服务配置成Windows服务后,MySQL服务会自动随着Windows *** 作系统的启动而启动,随着 *** 作系统的停止而停止,这也是MySQL官方文档建议的配置。
Windows service Name可设置为默认值,只要与其它服务不同名即可。在Windows系统中基于安全需求,MySQL服务需要在一个给定的账户下运行,选择默认的Standard System Account即可。保持默认配置后点击“next”。
第七步: 高级配置
因为在前面的第四步中勾选了“Show Advanced Options”选项,所以出现如下图所示的高级选项配置:
在这里可配置各种日志文件的存储路径,它默认存储在MySQL安装目录的data目录下面,若非必须不建议改动。Slow Query Log(慢查询日志)后面有一个Seconds配置项,默认值为10,表示一个SQL查询在经过10s后还没有查询出结果就会将此次查询记录到Slow Query Log中,方便DBA快速找到低效的 *** 作。Bin Log可用于主从数据同步。最下面的Server Id用于Master-Slave配置。这些都将在后续课程中讲到,这里保持默认配置即可。点击“next”。
第八步: 服务器配置应用
经过上述配置后,一个MySQL数据库已基本配置完成。进入到这一步骤后点击“Execute”执行配置项。
安装成功,点击“Finish”完成。
用压缩包安装
根据自己的 *** 作系统下载对应的32位或64位的压缩包。按如下步骤 *** 作:
第一步: 解压缩
将压缩包解压到C:\Program Files\MySQL路径下,也可以自定义路径。我的路径为C:\Program Files\MySQL\mysql-5710-winx64。
第二步: 配置环境变量
右键点击“计算机”,选择“属性”,依次打开“高级系统设置”->“环境变量”,在系统变量中选择“Path”项,并点击编辑。
保持原有值不变,并在末尾加上英文分号后追加C:\Program Files\MySQL\mysql-5710-winx64\bin,将MySQL安装路径下的bin目录配置到Path变量中,使在命令行的任何目录下可以执行MySQL命令。
第三步: 修改配置
打开MySQL安装目录下面的my-defaultini文件,找到basedir和datadir属性项,去掉前面的注释符号#,修改值如下:
basedir = C:\Program Files\MySQL\mysql-5710-winx64
datadir = C:\Program Files\MySQL\mysql-5710-winx64\data
分别表示MySQL的安装目录和数据目录。如果在第一步中解压缩到其它的文件夹则修改对应的值。
再将该文件重命名为myini。
第四步: 安装
以管理员身份运行cmd,进入到MySQL的bin目录,执行初始化命令:
mysqld --initialize --user=mysql --console1
该命令用来初始化数据,在57以前的版本是不需要执行该命令的。初始化完成后会提供一个临时的root密码,如下图红色方框,记下该密码。
再执行如下命令进行MySQL服务安装:
mysqld –install mysql1
mysql为默认的服务名,可不写。
需要注意的是一定要以管理员身份运行cmd。
第五步: 启动服务
在管理员cmd窗口中执行如下命令来启动MySQL服务:
net start mysql1
当出现如下图所示提示时表示MySQL安装并启动成功。
MySQL57以前的版本在安装时不需要执行第四步中的mysqld –initialize命令,如果漏掉该命令后在此步骤会出现如下错误:
因为该版本的压缩包里面有些文件和文件夹(如data文件夹)需要在执行mysqld -initialize命令后才创建。我在用56版本的安装步骤来进行安装时就在这里吃过很多亏,希望以此为戒,不再踩坑。
第六步: 登录
执行如下命令:
mysql -uroot -p1
提示输入密码,输入第四步中记录下的密码,按回车后出现如下页面表示登录成功,并进入了MySQL命令行模式。
第七步: 修改密码
在MySQL命令行执行如下命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'1
大家改成自己的密码。
如果没有修改密码就执行其它的SQL命令。
经过以上步骤后MySQL服务器安装完成。

设置mysql数据库远程连接:
Windows系统
1、 停止mysql的服务。
2、 进入命令窗口,然后进入MySQL的安装目录,比如我的安装目录是c:\mysql,进入c:\mysql\bin
3、 进入mysql数据库服务器
c:\mysql\bin>mysql –u root –p hkgt123
4、 选中数据库mysql :use mysql
5、 查询mysql数据库中的用户:
Select host,user,password from mysql;
6、 授权给root用户可以从任何主机使用密码为’hkgt123’登录MYSQL数据库:
GRANT ALL PRIVILEGES ON TO root@’%’ IDENTIFIED BY ‘hkgt123’ WITH GRANT OPTION;
7、 提交:commit;
8、 刷新权限:flush privileges;


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13468262.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-13
下一篇 2023-08-13

发表评论

登录后才能评论

评论列表(0条)

保存