




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Linux 下 MySQL 数据库服务器架设笔录本文环境:CentOS+MySQLMySQL 是目前最流行的开放源代码的关系数据库管理系统,是目前少有的开放源代码的数据库软件之一。开放源代码也就意味着任何人都能够使用和改变 MySQL 软件,任何人都能下载和使用此软件而无需支付任何费用。基于其快速、可靠、易用和免费等特点,MySQL 数据库系统在 Web 应用以及其他各行各业中得到了非常广泛的应用。1、 MySQL 数据库软件的安装和运行CentOS 5 操作系统安装完成之后一般情况下没有默认安装 MySQL 数据库,可进入安装光盘的软件目录,找到如下几个文件:perl-DBI-1.52-2.el5.i386 #Perl 语言的数据 APImysql-5.0.77-3.el5.i386 #MySQL 数据库客户端程序perl-DBD-MySQL-3.0007-2.el5.i386 #MySQL 与 Perl 语言的接口程序包unixODBC-2.2.11-7.1.i386.rpm #Linux/Unix 平台的 ODBC 程序mysql-connector-odbc-3.51.26r1127-1.el5.i386 #MySQL 数据库与 ODBC 的连接器mysql-server-5.0.77-3.el5.i386 #MySQL 数据库服务器程序将上述文件拷贝到服务器合适位置,依次执行安装:rootwww1 MySQL_Install# rpm -ivh perl-DBI-1.52-2.el5.i386.rpm Preparing. # 100%1:perl-DBI # 100%rootwww1 MySQL_Install# rpm -ivh mysql-5.0.77-3.el5.i386.rpm Preparing. # 100%1:mysql # 100%rootwww1 MySQL_Install# rpm -ivh perl-DBD-MySQL-3.0007-2.el5.i386.rpm Preparing. # 100%1:perl-DBD-MySQL # 100%rootwww1 MySQL_Install# rpm -ivh unixODBC-2.2.11-7.1.i386.rpm Preparing. # 100%1:unixODBC # 100%rootwww1 MySQL_Install# rpm -ivh mysql-connector-odbc-3.51.26r1127-1.el5.i386.rpmPreparing. # 100%1:mysql-connector-odbc # 100%rootwww1 MySQL_Install# rpm -ivh mysql-server-5.0.77-3.el5.i386.rpm Preparing. # 100%1:mysql-server # 100%也可以在联网状态下使用在线包管理工具 yum 进行安装:rootwww1 MySQL_Install# yum -y install mysql安装完 MySQL 之后可以输入以下命令启动数据库:rootwww1 MySQL_Install# /etc/init.d/mysqld start查看启动状态:rootwww1 MySQL_Install# ps -eaf|grep mysqldroot 2842 1 0 09:43 pts/1 00:00:00 /bin/sh /usr/bin/mysqld_safe -datadir=/var/lib/mysql -socket=/var/lib/mysql/mysql.sock -log-error=/var/log/mysqld.log -pid-file=/var/run/mysqld/mysqld.pid -user=mysqlmysql 2892 2842 0 09:43 pts/1 00:00:00 /usr/libexec/mysqld -basedir=/usr -datadir=/var/lib/mysql -user=mysql -pid-file=/var/run/mysqld/mysqld.pid -skip-external-locking -socket=/var/lib/mysql/mysql.sockroot 2911 2576 0 09:44 pts/1 00:00:00 grep mysqld可以看到服务器启动了 2 个进程,其中/usr/bin/mysqld_safe 是一个脚本程序,由 root 用户运行,它的作用是启动数据库服务进程 mysqld,并一直监控其运行状态,如果发现mysqld 进程死了,就会重新启动它。而数据库服务进程 mysqld 则有 mysql 用户运行,用以提供数据库服务。默认情况下 mysql 的监听端口是 3306,可以查看一下端口状态:rootwww1 MySQL_Install# netstat -anlp |grep :3306tcp 0 0 :3306 :* LISTEN 2892/mysqld还可使用以下命令查看 MySQL 的运行状态:rootwww1 MySQL_Install# mysqladmin versionmysqladmin Ver 8.41 Distrib 5.0.77, for redhat-linux-gnu on i686Copyright (C) 2000-2006 MySQL ABThis software comes with ABSOLUTELY NO WARRANTY. This is free software,and you are welcome to modify and redistribute it under the GPL licenseServer version 5.0.77Protocol version 10Connection Localhost via UNIX socketUNIX socket /var/lib/mysql/mysql.sockUptime: 7 min 1 secThreads: 1 Questions: 2 Slow queries: 0 Opens: 12 Flush tables: 1 Open tables: 6 Queries per second avg: 0.0052、 使用命令行客户端登录 MySQL 数据库最常用的 MySQL 客户端是 mysql 命令,其格式如下:Mysql -h -u -p 数据库名其中:-h 表示要登录的 MySQL 数据库所在的主机,默认为 -u 表示使用指定的用户名登录,默认为 root 用户( 注:此 root 用户不等同于操作系统的 root 用户)-p表示登录时需要输入密码数据库名 表示登录后要使用哪一个数据库。下面为客户端登录的演示:rootwww1 MySQL_Install# mysql #连接本地 MySQL 数据库Welcome to the MySQL monitor. Commands end with ; or g.Your MySQL connection id is 3Server version: 5.0.77 Source distributionType help; or h for help. Type c to clear the buffer.mysql use mysql #使用 mysql 数据库Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changed#修改 root 用户的密码mysql update user set password=password(123456) where user=root;Query OK, 3 rows affected (0.00 sec)Rows matched: 3 Changed: 3 Warnings: 0#在用户表新增一条 user 记录,即增加一个用户 usermysql insert into user(host,user,password) values(“%“,“user“,password(“123456“);Query OK, 1 row affected, 3 warnings (0.00 sec)mysql flush privileges; #刷新 MySQL 的系统权限相关表Query OK, 0 rows affected (0.01 sec)MySQL 服务器安装完成后,会首先创建一个名为 mysql 的数据库,里面包含了MySQL 数据库系统的所有系统信息。以上操作中,user 表即为用户存放表,增加一条新记录即增加一个新用户,改变 password 字段的值即为修改密码。每一个用户记录都有一个 host 字段,表示允许该用户从哪一台主机登录, “%”表示可以从所有客户机进行远程登录,但不能从本机登录。localhost/ 表示只能从本机登录。或者可以指定主机名实现从特定主机登录。如需指定可从多台主机登录,则可增加多条记录到user 表,例如 root 用户的记录:mysql select t.host,t.user,t.password from user t where t.user=root;+-+-+-+| host | user | password |+-+-+-+| localhost | root | 565491d704013245 | | | root | 565491d704013245 | | | root | 565491d704013245 | +-+-+-+3 rows in set (0.00 sec)如上结果显示 root 用户可从 localhost、 和 登录,其实指的都是本机。3、 图形界面的 MySQL 客户端MySQL 的客户端有许多种,其中有许多优秀的图形界面客户端,可以大大的方便对数据库的操作和管理,这里使用官方版本的图形管理工具 MySQL Query Browser。MySQL Query Browser 是 MySQL 官方推荐的图形管理工具,支持各种平台,可从网站 /downloads/gui-tools/下载对应平台的软件,安装好初次运行时需要建立一个命名的数据库连接,如下图所示:由于刚才的配置,root 用户是不能从客户端远程登录的,为了管理方面,在本机的客户端中修改 root 用户可从客户端远程登录:mysql update user t set t.host=% where t.host= and t.user=root;Query OK, 3 rows affected (0.00 sec)Rows matched: 3 Changed: 3 Warnings: 0修改后重启数据库:rootwww1 dx# /etc/init.d/mysqld restart停止 MySQL: 确定启动 MySQL: 确定此时点击上图中的 OK 按钮即可连接进入数据库,其余操作略。除此之外,通过选择 Tools|MySQL Administrator 或从开始菜单可以打开 MySQL 的管理工具 MySQL Administrator,该工具主要是对 MySQL 进行用户管理,性能监控,日志管理,数据库备份与回复以及数据库同步等操作,是一个非常实用的工具。4、 MySQL 服务器的配置与连接MySQL 服务器安装完之后,其默认的配置已经可以使其正常运行,但初始的配置不一定能让服务器运行在最佳的或最合适的状态,此时我们就要对服务器进行配置,以使其达到最佳配置状态。MySQL 服务器默认的配置文件是/etc 目录下的 my.conf 文件,这个文件在服务器安装时就会创建,但里面的配置指令很少,只用于初步学习时使用。与这个文件同时被创建的还有另外 5 个例子配置文件,存放于/usr/share/doc/mysql-server-5.0.77 目录下。这 5 个配置文件的名称和配置目标如下:f :为运行在小内存主机(, MASTER_PORT=,# MASTER_USER=, MASTER_PASSWORD= ;# where you replace , , by quoted strings and# by the masters port number (3306 by default).# Example:# CHANGE MASTER TO MASTER_HOST=125.564.12.1, MASTER_PORT=3306,# MASTER_USER=joe, MASTER_PASSWORD=secret;# OR# 2) Set the variables below. However, in case you choose this method, then# start replication for the first time (even unsuccessfully, for example# if you mistyped the password in master-password and the slave fails to# connect), the slave will create a file, and any later# change in this file to the variables values below will be ignored and# overridden by the content of the file, unless you shutdown# the slave server, delete and restart the slaver server.# For that reason, you may want to leave the lines below untouched# (commented) and instead use CHANGE MASTER TO (see above)# required unique id between 2 and 232 - 1# (and different from the master)# defaults to 2 if master-host is set# but will not function as a slave if omitted#server-id = 2# The replication master for this slave - required#master-host = # The username the slave will use for authentication when connecting# to the master - required#master-user = # The password the slave will authenticate with when connecting to# the master - required#master-password = # The port the master is listening on.# optional - defaults to 3306#master-port = # binary logging - not required for slaves, but recommended#log-bin=mysql-bin# Point the following paths to different dedicated disks#tmpdir = /tmp/#log-update = /path-to-dedicated-directory/hostname# Uncomment the following if you are using BDB tables#bdb_cache_size = 64M#bdb_max_lock = 100000# Uncomment the following if you are using InnoDB tables#innodb_data_home_dir = /var/lib/mysql/#innodb_data_file_path = ibdata1:10M:autoextend#innodb_log_group_home_dir = /var/lib/mysql/#innodb_log_arch_dir = /var/lib/mysql/# You can set _buffer_pool_size up to 50 - 80 %# of RAM but beware of setting memory usage too high#innodb_buffer_pool_size = 256M#innodb_additional_mem_pool_size = 20M# Set _log_file_size to 25 % of buffer pool size#innodb_log_file_size = 64M#innodb_log_buffer_size = 8M#innodb_flush_log_at_trx_commit = 1#innodb_lock_wait_timeout = 50mysqldump #用户使用 mysqldump 工具在不同 SQL 数据库之间传输数据时的配置quick #表示支持较大数据库的转储max_allowed_packet = 16M #置用来传输数据库表到其他数据库的最大允许包的大小mysql #指定启动 MySQL 服务器的配置no-auto-rehash #快速启动数据库# Remove the next comment character if you are not familiar with SQL#safe-updates #如果用户对 SQL 不熟悉,可以启用安全更新功能isamchk #使用 isamchk 工具修复 isam 类型表时采用的配置key_buffer = 128Msort_buffer_size = 128Mread_buffer = 2Mwrite_buffer = 2Mmyisamchk #使用 isamchk 工具修复 myisam 类型表时采用的配置key_buffer = 128Msort_buffer_size = 128Mread_buffer = 2Mwrite_buffer = 2Mmysqlhotcopy #使用 mysqlhotcopy 热备工具时采用的配置interactive-timeout #数据库热备份期间将挂起数据库连接,该指令设置最大的超时时间,默认为 28800 秒一般而言,这 5 个配置文件都是比较成熟的有针对性的设计,用户在配置 MySQL 服务器时可根据实际的服务器需求情况挑选其中一个配置文件,将其复制到/etc 目录覆盖原f 文件即可,此时该文件是对全局数据库起作用的。也可以将其复制到 MySQL 服务器数据库文件的存储目录,如默认创建的 mysql 数据库的文件存储目录 /var/lib/mysql,并改名为 f,则此时将只对 mysql 这个数据库起作用。还可以将其复制到某一个用户的个人目录下并改名为“.f” ,则此配置只对该用户起作用。5、 mysqld 进程配置MySQL 服务器可以,启用多个 mysqld 进程。在/etc/f 配置文件中,mysqld配置段指定了 mysqld 进程的配置信息,如果有多个进程,则可以使用mysqld1、mysqld2为起始标志对其他进程进行配置,以调整不同进程的配置差异。下面给出一些 mysqld 进程的相关配置选项:选项名称 功能说明Basedir=path 指定 MySQL 的安装目录路径Bind-address=IP 指定与主机的哪个网络接口绑定,默认绑定全部网络接口Console 除了写入日之外,还将错误消息写入 stderr 及 stdoutCharacter-sets-dir=path 字符集安装的目录路径Chroot=path 将某一目了设定为 MySQL 的根目录Character-sets-server=charset 指定数据库服务器的默认字符集Core-file 如果 mysqld 进程异常终止,要求把内核文件写入磁盘Datadir=path 设置数据库文件的路径Default-time-zone=type 设置服务器默认的时区Init-file=file Mysqld 启动时从该文件读取 sql 语句并执行Log=file 设置常规日志的存放位置和文件名。Log-bin=file 设置二进制日志文件的文件名Log-bin-index=file 设置二进制日志文件的索引文件名Log-error=file 设置错误日志的文件名Log-slow-queries 将所有执行时间超过 long-query-time 秒的查询计入该文件Pid-file=path 进程 ID 文件的路径Port=port_num 监听 TCP/IP 连接时使用的端口号Server_id 指定 mysqld 进程的一个编号,值为以 1 开始的整数Skip-bdb 禁用 BDB 引擎,可以节省内存Tmpdir=path 指定临时文件的路径User=user_name|user_id 指定运行 mysqld 进程的操作系统用户在 mysqld 进程运行的过程中还可以通过命令来设置系统中使用的变量,包括两种,一种是全局变量,它影响服务器的全局操作。另一个是会话变量,它只影响与其连接的具体客户端的相关操作。服务器启动之后,可以通过连接服务器并执行以下命令来修改变量:SET GLOBAL 变量名=值 #修改全局变量SET SESSION 变量名=值 #修改会话变量任何访问全局变量的客户端都可以即时看见全局变量的改变,但修改会话变量则只能改变客户端自己的会话变量,而不能更改其他客户端的会话变量,下面是两个设置系统变量的例子:mysql SET GLOBAL sort_buffer_size = 10M;mysql SET SESSION sort_buffer_size = 10M;6、 MySQL 实例管理器MySQL 实例管理器用来监视和管理 MySQL 数据库服务器进程,包括启动和停止MySQL 服务器。 MySQL 实例管理器可以在 mysqld_safe 脚本中使用,也可以在远程主机上使用。默认情况下,操作系统调用/etc/rc.d/init.d/mysqld 脚本启动 MySQL 服务器时,先调用 mtsqld_safe 脚本,再由该脚本启动 mysqld 进程。如果把/etc/rc.d/init.d/mysqld 脚本中的 use_mysqld_safe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安庆市中储粮2025秋招面试专业追问题库购销统计岗
- 内蒙古地区中储粮2025秋招面试专业追问题库综合管理岗
- 松原市中储粮2025秋招基建工程岗高频笔试题库含答案
- 乐山市中石油2025秋招面试半结构化模拟题及答案新材料与新能源岗
- 国家能源甘孜自治州2025秋招面试专业追问及参考电气工程岗位
- 抗菌药物临床合理应用试题及答案
- 2025年急诊调度考试试题及答案
- 抚州市中石化2025秋招面试半结构化模拟题及答案市场营销与国际贸易岗
- 普洱市中石化2025秋招笔试模拟题含答案市场营销与国际贸易岗
- 2025年地理招聘考试题及答案
- 房地产销售岗位简历模版大全
- 智能楼宇管理员试卷及答案
- 创新成果转化高效推进承诺书6篇范文
- 自卸车安全教育培训课件
- 冶金行业事故回放课件
- 5年(2021-2025)高考1年模拟地理真题分类汇编专题03 地球上的水(解析版)(浙江专用)
- 电气检修班组安全培训课件
- 2024版中国高血压防治指南(完整版)
- 不再举报协议书6篇
- 空管知识培训材料课件
- 患者身份识别管理标准WST840-2025学习解读课件
评论
0/150
提交评论