xml地图|网站地图|网站标签 [设为首页] [加入收藏]
来自 关于我们 2019-10-05 10:40 的文章
当前位置: 新濠国际登录平台 > 关于我们 > 正文

4.4 MySQL安装相关Program.. 2,2.4.6是就会遇到下面错

/usr/bin/mysql_waitpid

Linux如何查看YUM的安装目录,linux查看yum

Linux下如何查看使用YUM安装过的包的安装路径呢? 在搞清楚这个问题前,我们先来了解一下YUM。 YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,避免了手动安装的麻烦(寻找资源、下载;放到指定目录安装;处理依赖关系并下载依赖关系的包进行安装)。所以用yum安装,实质上是用RPM安装,所以RPM查询信息的指令都可用。

 

如果使用RPM安装了一些包,一般来说,RPM默认安装路径如下:

 

  Directory

Contents of Directory

/etc

一些配置文件的目录,例如/etc/init.d/mysql

 

/usr/bin

一些可执行文件

/usr/lib

一些程序使用的动态函数库

/usr/share/doc

一些基本的软件使用手册与帮助文档

/usr/share/man

一些man page文件

 

以MySQL的安装为例,我们使用RPM方式安装了MySQL的两个包,其实rpm有两个参数-l和-c可以帮助我们查看具体的安装路径。

 

-l 显示软件包中的文件列表

-c 显示配置文件列表

 

那么我们可以使用“rpm -ql  包名”来查看具体的安装路径。如下所示:

 

 

 

[[email protected] ~]# rpm -qa | grep -i mysql

MySQL-server-advanced-5.6.20-1.rhel5

MySQL-client-advanced-5.6.20-1.rhel5

[[email protected] ~]# rpm -ql MySQL-client-advanced-5.6.20-1.rhel5

/usr/bin/msql2mysql

/usr/bin/mysql

/usr/bin/mysql_config_editor

/usr/bin/mysql_find_rows

/usr/bin/mysql_waitpid

/usr/bin/mysqlaccess

/usr/bin/mysqlaccess.conf

/usr/bin/mysqladmin

/usr/bin/mysqlbinlog

/usr/bin/mysqlcheck

/usr/bin/mysqldump

/usr/bin/mysqlimport

/usr/bin/mysqlshow

/usr/bin/mysqlslap

/usr/share/man/man1/msql2mysql.1.gz

/usr/share/man/man1/mysql.1.gz

/usr/share/man/man1/mysql_config_editor.1.gz

/usr/share/man/man1/mysql_find_rows.1.gz

/usr/share/man/man1/mysql_waitpid.1.gz

/usr/share/man/man1/mysqlaccess.1.gz

/usr/share/man/man1/mysqladmin.1.gz

/usr/share/man/man1/mysqlbinlog.1.gz

/usr/share/man/man1/mysqlcheck.1.gz

/usr/share/man/man1/mysqldump.1.gz

/usr/share/man/man1/mysqlimport.1.gz

/usr/share/man/man1/mysqlshow.1.gz

/usr/share/man/man1/mysqlslap.1.gz

 

 

[[email protected] tmp]# rpm -ql MySQL-server-advanced-5.6.20-1.rhel5

/etc/init.d/mysql

/etc/logrotate.d/mysql

/etc/my.cnf

/usr/bin/innochecksum

/usr/bin/my_print_defaults

/usr/bin/myisam_ftdump

/usr/bin/myisamchk

/usr/bin/myisamlog

/usr/bin/myisampack

/usr/bin/mysql_convert_table_format

/usr/bin/mysql_fix_extensions

/usr/bin/mysql_install_db

/usr/bin/mysql_plugin

/usr/bin/mysql_secure_installation

/usr/bin/mysql_tzinfo_to_sql

/usr/bin/mysql_upgrade

/usr/bin/mysql_zap

/usr/bin/mysqlbug

/usr/bin/mysqld_multi

/usr/bin/mysqld_safe

/usr/bin/mysqldumpslow

/usr/bin/mysqlhotcopy

/usr/bin/mysqltest

.....................................................

 

 

 

[[email protected] ~]# rpm -qc MySQL-server-advanced-5.6.20-1.rhel5

 

/etc/logrotate.d/mysql

 

/etc/my.cnf

 

[[email protected] ~]# 

 

在MySQL的官方文档,你可以看到RPM包所在的安装目录。我们使用rpm -ql 对比验证了一下,基本都OK,但是很奇怪的是,在上面这个版本中,我没有找到/etc/my.cnf,而是/usr/my.cnf

 

MySQL 5.6

Directory

Contents of Directory

/usr/bin

Client programs and scripts

/usr/sbin

The mysqld server

/var/lib/mysql

Log files, databases

/var/lib/mysql-files

Value of secure_file_priv

/usr/share/info

MySQL manual in Info format

/usr/share/man

Unix manual pages

/usr/include/mysql

Include (header) files

/usr/lib/mysql

Libraries

/usr/share/mysql

Miscellaneous support files, including error messages, character set files, sample configuration files, SQL for database installation

/usr/share/sql-bench

Benchmarks

 

 

 

MySQL 5.7

Files or Resources

Location

Client programs and scripts

/usr/bin

mysqld server

/usr/sbin

Configuration file

/etc/my.cnf

Data directory

/var/lib/mysql

Error log file

For RHEL, Oracle Linux, CentOS or Fedora platforms: /var/log/mysqld.log

For SLES: /var/log/mysql/mysqld.log

Value of secure_file_priv

/var/lib/mysql-files

System V init script

For RHEL, Oracle Linux, CentOS or Fedora platforms: /etc/init.d/mysqld

For SLES: /etc/init.d/mysql

Systemd service

For RHEL, Oracle Linux, CentOS or Fedora platforms: mysqld

For SLES: mysql

Pid file

/var/run/mysql/mysqld.pid

Socket

/var/lib/mysql/mysql.sock

Keyring directory

/var/lib/mysql-keyring

Unix manual pages

/usr/share/man

Include (header) files

/usr/include/mysql

Libraries

/usr/lib/mysql

Miscellaneous support files (for example, error messages, and character set files)

/usr/share/mysql

 

 

另外一台测试服务器,使用yum安装了mysql-community-server-5.7.18,测试验证发现又是正常。 暂时不清楚这个细节问题。

 

 

Linux下如何查看使用YUM安装过的包的安装路径呢? 在搞清楚这个问题前,我们先来了解一下YUM。...

  file /usr/bin/mysqlaccess from install of mysql-5.0.77-4.el5_6.6.x86_64 conflicts with file from package MySQL-client-advanced-5.6.20-1.rhel5.x86_64

4.7 Mysql开发工具

 

 

4.3.2 mysqld_safe

mysqld_safe是在unix服务器上推荐的启动方法,mysqld_safe启动mysqld程序并且覆盖默认的行为和显示的指定启动什么服务。mysql_safe会读取配置文件为[mysqld],[server],[msqld_safe]里面的配置信息。

具体的mysqld_safe参数信息请看:

 

另:在centos 用yum安装的mariadb,如果配置了配置文件,用service mysql start的时候有个坑,会无线的点(.)下去。

这个情况在这里有详细的描述:

/usr/bin/mysqlaccess.conf

安装相关依赖组件时,遇到conflict with file的错误,如上截图所示,然后安装Percona Xtrabackup 2.4.6是就会遇到下面错误:

4.3.3 mysql.server

mysql.server用于mac os x对于unix like 的系统基本不用。详细看:

/usr/bin/mysqlcheck

安装 perl-DBD-MySQL时,就会遇到大量类似下面错误

4.5.1 mysql

mysql是最常使用的工具之一弄能也十分的强大,主要有个特点是可以使用system或者/!来调用shell,如:

system ls

! ls

用help [content]查看服务端的帮助

关于mysql的参数,交互式命令等可以查看:

/usr/bin/myisamlog

[root@DB-Server tmp]# rpm -qa | grep -i mysql

MySQL-server-advanced-5.6.20-1.rhel5

MySQL-client-advanced-5.6.20-1.rhel5

[root@DB-Server tmp]# rpm -ivh MySQL-shared-compat-advanced-5.6.20-1.rhel5.x86_64.rpm 

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

   1:MySQL-shared-compat-adv########################################### [100%]

[root@DB-Server tmp]# yum install perl-DBD-MySQL

[root@DB-Server tmp]# rpm -ivh percona-xtrabackup-24-2.4.6-2.el5.x86_64.rpm 

warning: percona-xtrabackup-24-2.4.6-2.el5.x86_64.rpm: Header V4 DSA signature: NOKEY, key ID cd2efd2a

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

   1:percona-xtrabackup-24  ########################################### [100%]

[root@DB-Server tmp]# 

4.6.16 mysql_zap

mysql_zap删除模式匹配到的所有进程。

shell> mysql_zap [-signal] [-?Ift] pattern

具体参数:

/usr/bin/mysqlhotcopy

 

4.4 MySQL安装相关Program

/usr/bin/mysql

如上所示,既然缺少组件,那么安装libev.x86_64, 如下所示,本地yum源安装libev.so.4失败,只能从网上下载libev-4.15-1.el5.rf.x86_64.rpm,网址为

4.8 其他program

MYSQL Program 目录 4 MYSQL Program .. 1 4.3 MySQL Server 和 Server 启动程序 ... 1 4.3.1 mysqld . 1 4.3.2 mysqld_safe . 1 4.3.3 mysql.server . 1 4.3.4 mysqld_multi 1 4.4 My...

/usr/bin/mysqldumpslow

  file /usr/bin/mysql_waitpid from install of mysql-5.0.77-4.el5_6.6.x86_64 conflicts with file from package MySQL-client-advanced-5.6.20-1.rhel5.x86_64

4.6.10 mysqlhotcopy

mysqlhotcopy是一个perl脚本,使用FLUSH TABLES,LOCK TABLES和cp,scp备份数据库。只能备份myisam和ARCHIVE的表。

shell> mysqlhotcopy db_name [/path/to/new_directory]

shell> mysqlhotcopy db_name_1 ... db_name_n /path/to/new_directory

也可以用正则表达式,备份数据库中的表:

shell> mysqlhotcopy db_name./regex/

用~前缀排除表名

shell> mysqlhotcopy db_name./~regex/

具体参数:

/usr/bin/mysqldump

在Red Hat Enterprise Linux Server release 5.7 (Tikanga)上使用RPM方式安装Percona Xtrabackup 2.4.6时遇到了一些问题,特意总结在此。

4.6.3 myisamchk

Myisamchk获取myisam表信息,check,修复,优化表的工具。检查和修复表也可以使用CHECK TABLE REPAIR TABLE。

Mysiamchk不带选项是,只做一些简单的表检查。

myisamchk [options] tbl_name ...

如果不再database目录,也可以

myisamchk /path/to/database_dir/*.MYI

具体参数“

 

 

4.6.11 mysql_convert_table_format

把数据库中的表转化为指定的存储引擎。

shell> mysql_convert_table_format [options]db_name

具体参数:

[root@DB-Server tmp]# rpm -ql MySQL-server-advanced-5.6.20-1.rhel5

 

4.3 MySQL Server和Server启动程序

另外一台测试服务器,使用yum安装了mysql-community-server-5.7.18,测试验证发现又是正常。 暂时不清楚这个细节问题。

  file /usr/bin/msql2mysql from install of mysql-5.0.77-4.el5_6.6.x86_64 conflicts with file from package MySQL-client-advanced-5.6.20-1.rhel5.x86_64

4.6.6 mysql_config_editor

mysql_config_editor会保存认证信息到一个加密的登陆文件(.mylogin.cnf)

shell> mysql_config_editor [program_options] command [command_options]

例:

shell> mysql_config_editor set --login-path=local

         --host=localhost --user=localuser --password

Enter password: enter password "localpass" here

shell> mysql_config_editor set --login-path=remote

         --host=remote.example.com --user=remoteuser --password

Enter password: enter password "remotepass" here

显示内容:

shell> mysql_config_editor print --all

[local]

user = localuser

password = *****

host = localhost

[remote]

user = remoteuser

password = *****

host = remote.example.com

mysql_config_editor命令和选项:

/usr/bin/mysql_tzinfo_to_sql

遇到这个错误是因为没有安装MySQL-shared-compat组件,安装了MySQL-shared-compat-advanced-5.6.20-1.rhel5.x86_64.rpm后,然后使用yum install perl-DBD-MySQL就不会遇到conflict with file的错误

4 MYSQL Program

目录

4 MYSQL Program.. 1

4.3 MySQL Server和Server启动程序... 1

4.3.1 mysqld. 1

4.3.2 mysqld_safe. 1

4.3.3 mysql.server. 1

4.3.4 mysqld_multi1

4.4 MySQL安装相关Program.. 2

4.4.1 comp_err. 2

4.4.2 mysqlbug. 2

4.4.3 mysql_install_db. 2

4.4.4 mysql_plugin. 2

4.4.5 mysql_secure_installation. 3

4.4.6 mysql_tzinfo_to_sql3

4.4.7 mysql_upgrade. 3

4.5 MySQL客户端程序... 4

4.5.1 mysql4

4.5.2 mysqladmin. 4

4.5.3 mysqlcheck. 4

4.5.4 mysqldump. 5

4.5.5 mysqlimport. 5

4.5.6 mysqlshow.. 5

4.5.7 mysqlslap. 6

4.6 MySQL管理和效率Programs. 6

4.6.1 innochecksum.. 6

4.6.2 myisam_ftdump. 6

4.6.3 myisamchk. 7

4.6.4 myisamlog. 7

4.6.5 myisampack. 7

4.6.6 mysql_config_editor. 7

4.6.7 mysqlaccess. 8

4.6.8 mysqlbinlog. 8

4.6.9 mysqldumpslow.. 9

4.6.10 mysqlhotcopy. 9

4.6.11 mysql_convert_table_format. 9

4.6.12 mysql_find_rows. 9

4.6.13 mysql_fix_extensions. 10

4.6.14 mysql_setpermission. 10

4.6.15 mysql_waitpid. 10

4.6.16 mysql_zap. 10

4.7 Mysql开发工具... 10

4.8 其他program.. 10

 

 

/usr/bin/mysqltest

  file /usr/bin/mysql from install of mysql-5.0.77-4.el5_6.6.x86_64 conflicts with file from package MySQL-client-advanced-5.6.20-1.rhel5.x86_64

4.5.4 mysqldump

mysqldump是逻辑备份工具,备份产生sql语句结果可以放在txt,xml和cvs中。mysqldump也是常用工具之一。mysqldump可以适用于小数据库但是大数据库用mysqldump备份在恢复的时候很坑爹。大数据库如果是innodb表可以考虑使用mysqlbackup,做物理备份,如果是myISAM表可以考虑使用mysqlhotcopy。

例子:

备份数据库

shell> mysqldump db_name > backup-file.sql

恢复数据库:

shell> mysql db_name < backup-file.sql

shell> mysql -e "source /path-to-backup/backup-file.sql" db_name

迁移数据库:

shell> mysqldump --opt db_name | mysql --host=remote_host -C db_name

备份多个数据库:

shell> mysqldump --databases db_name1 [db_name2 ...] > my_databases.sql

更多的mysqldump的参数和选项:

/usr/bin/mysql_zap

 

4.5.5 mysqlimport

mysqlimport导入工具,是通过LOAD DATA INFILE导入数据。

关于LOAD DATAINFILE可以查看:

shell> mysqlimport [options] db_name textfile1 [textfile2 ...]

mysqlimport的选项很多,主要介绍2个:

列分隔符:

--fields-terminated-by=...--fields-enclosed-by=...--fields-optionally-enclosed-by=...--fields-escaped-by=...,这些都是列分隔符

行分隔符:

--lines-terminated-by=...,是用方法: --lines-terminated-by="rn"和列分隔符一样。

其他参数请看:

Linux下如何查看使用YUM安装过的包的安装路径呢? 在搞清楚这个问题前,我们先来了解一下YUM。 YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,避免了手动安装的麻烦(寻找资源、下载;放到指定目录安装;处理依赖关系并下载依赖关系的包进行安装)。所以用yum安装,实质上是用RPM安装,所以RPM查询信息的指令都可用。

新濠国际登录平台 1

4.3.4 mysqld_multi

mysqld_multi用来管理多个mysqld进程的。可以启动关闭服务,或者报告当前状态。mysqld_multi会读取配置文件中[新濠国际登录平台,mysqldN],N是正数。

启动[mysqld7]:

shell> mysqld_multi start 17

关闭[mysqld8],[mysqld10]到[mysqld13]:

shell> mysqld_multi stop 8,10-13

具体mysqld_multi的参数可以看:

使用mysqld_multi要注意点:

1.在使用前要知道传递给mysqld的各个参数的意思,并注意不同的mysqld使用同一个数据文件夹可能带来的问题。

2.保证启动mysqld用户可以访问数据库文件夹

3.保证有相同的MYSQL账号来关闭mysqld并且有SHOUTDOWN权限。

4.每个socket文件和端口都不一样

5.每个mysqld都要有自己的pid文件

6.如果不是以root启动会有告警

配置文件的例子和详细信息可以看:

/usr/share/man/man1/mysqlaccess.1.gz

 

4.4.4 mysql_plugin

mysql_plugin可以让mysql管理启动哪些插件要被mysql加载,mysql.plugin表决定了通过mysql_plugin加载哪些插件。在服务启动的时候mysql会加载mysql.plugin中的插件,当然也可以通过—plugin_name来指定插件。

更多关于插件安装可以查看:

 Section 5.1.8.1, “Installing and Uninstalling Plugins”

更多关于参数信息可以查看:

/usr/share/man/man1/mysqlimport.1.gz

 

4.5.3 mysqlcheck

mysqlcheck用来维护表的,检查,修复,优化,分析表。当mysqlcheck执行的时候对表加锁(读锁),但是其他会话无法访问。对于大表mysqlcheck是很花时间的。mysqlcheck和myisamchk类似,但是也有不同:1.在mysqld启动的时候才能运行,2.运行的时候不需要关闭服务。

对于用户来说mysqlcheck只是更加方便运行CHECK TABLE,REPAIR TABLE,ANALYZE TABLE,OPTIMIZE TABLE。由mysqlcheck决定需要运行哪个sql。有些存储引擎不不支持上面4个sql,所有会报错。

shell> mysqlcheck [options] db_name [tbl_name ...]

shell> mysqlcheck [options] --databases db_name ...

shell> mysqlcheck [options] --all-databases

具体参数和命令:

.....................................................

[root@DB-Server tmp]#yum -y install perl perl-devel libaio libaio-devel perl-Time-HiRes perl-DBD-MySQL

4.6 MySQL管理和效率Programs

/usr/bin/myisamchk

 

4.6.2 myisam_ftdump

Myisam_ftdump显示myisam表中FULLTEXT索引信息。在运行myisam_ftdump之前如果服务还是启动的,那么闲运行FLUSH TABLES。

shell> myisam_ftdump [options] tbl_name index_num

例:

myisam_ftdump /usr/local/mysql/data/test/mytexttable 1

详细参数:

/usr/bin/mysql_install_db

 

4.4.5 mysql_secure_installation

用mysql_secure_installation,可以:

1.设置root账号密码

2.可以设置root不让非localhost登陆

3.可以删除匿名账号

4.可以删除test账号

直接运行mysql_secure_installaiton,然后会进入交互模式进行设置。

/etc/my.cnf

[root@DB-Server tmp]# rpm -ivh percona-xtrabackup-24-2.4.6-2.el5.x86_64.rpm 

warning: percona-xtrabackup-24-2.4.6-2.el5.x86_64.rpm: Header V4 DSA signature: NOKEY, key ID cd2efd2a

error: Failed dependencies:

        libev.so.4()(64bit) is needed by percona-xtrabackup-24-2.4.6-2.el5.x86_64

        perl(DBD::mysql) is needed by percona-xtrabackup-24-2.4.6-2.el5.x86_64

4.6.14 mysql_setpermission

mysql_setpermission是Perl脚本,用于交互式的设置mysql grant表的权限。

shell> mysql_setpermission [options]

mysql_setpermission会读取配置文件中[client]和[perl]

具体选项:

/usr/share/man/man1/mysqlbinlog.1.gz

[root@DB-Server tmp]# yum -y install libev.x86_64

Loaded plugins: product-id, security, subscription-manager

Updating Red Hat repositories.

Setting up Install Process

No package libev.x86_64 available.

Nothing to do

 

 

[root@DB-Server tmp]# rpm -ivh libev-4.15-1.el5.rf.x86_64.rpm 

warning: libev-4.15-1.el5.rf.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 6b8d79e6

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

   1:libev                  ########################################### [100%]

[root@DB-Server tmp]# yum list | grep "perl-DBD-MySQL"

perl-DBD-MySQL.x86_64                      3.0007-2.el5                media   

[root@DB-Server tmp]# yum install perl-DBD-MySQL

4.4.6 mysql_tzinfo_to_sql

mysql_tzinfo_to_sql把时区信息加载到mysql,如:

shell> mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql

这些数据会被插入到mysql.timezhone*表里面

详细信息查看:

/usr/bin/mysql_config_editor

  file /usr/bin/mysql_find_rows from install of mysql-5.0.77-4.el5_6.6.x86_64 conflicts with file from package MySQL-client-advanced-5.6.20-1.rhel5.x86_64

4.3.1 mysqld

mysqld是mysql的服务程序,监听端口,通过系统变量和配置参数来影响mysqld的行为

本文由新濠国际登录平台发布于关于我们,转载请注明出处:4.4 MySQL安装相关Program.. 2,2.4.6是就会遇到下面错

关键词: