2024年4月25日发(作者:)

# Next command is optional

shell> cp support-files/ /etc/init.d/mysql2 (这个文件一会需

要更改)

安装完成后,启动测试,看是否正常。,如果出现错误

linux-hg1:~ # ps -ef |grep mysql

查看所对应的日志文件查看,解决。正常后关闭mysql。

二、安装rpm包,这个容易,就把client包和server包安装下就ok了

三、调节路径变量,使rpm安装的mysql和二进制安装的mysql之间不要产生影响

1、安装rpm的mysql后就有/etc/文件了

#cp /etc/ /home/mysql2/.

#chown mysql2:mysql /home/mysql2/.

把.中涉及到变量的都该为二进制mysql包的实际变量(端口号、socket等),

其他参数全部删除,因为它在/etc/中,会读入并且不需要修改它

2、现在把二进制的mysql启动,发现起不来(如果二进制包的版本比rpm包的版

本高的话,可能能直接启动),看--log-error对应的文件,错误是某些参数或者选

项不知道。

原因:二进制的mysql启动是读到/etc/的值时有些不认识

解决:

指定配置文件,启动时 ./bin/mysqld_safe

--defaults-file=/home/mysql2/. ,应该就能启动正常了(.中只

有一些路径的变量)【这里的.文件中可以添加/etc/中认识的参数、

选项什么的,具体排除方法是:不指定配置文件让mysql读/etc/

中的参数,那个报错就注释掉那个,直到可以正常启动,然后把没注释的参数或者

选项都复制到/home/mysql2/.文件中;启动(注意,这次就要指定配置

文件.了);再把/etc/中的前面注释掉的再复原(因为rpm安装的

mysql要用)】

四、现在两个mysql之间就不影响了,下面要做的是,让二进制安装的mysql也可

以直接service mysql2 start这样启动

更改/etc/init.d/mysql2文件(上面步骤中复制过去的)

。。。

MY_CNF=/home/mysql2/.

。。。

。。。

。。。

case "$mode" in

'start')

# Start daemon

# Safeguard (relative paths, core dumps..)

cd $basedir

echo $echo_n "Starting MySQL"

if test -x $bindir/mysqld_safe

then

# Give extra arguments to mysqld with the file. This script

# may be overwritten at next upgrade.

$bindir/mysqld_safe --defaults-file="$MY_CNF" --user=mysql2 --datadir="$datadir" --

pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 &

wait_for_pid created "$!" "$mysqld_pid_file_path"; return_value=$?

# Make lock for RedHat / SuSE

if test -w "$lockdir"

then

touch "$lock_file_path"

fi

exit $return_value

else

log_failure_msg "Couldn't find MySQL server ($bindir/mysqld_safe)"

fi

;;

'stop')

搜索mysqld_safe可以快速的找到这个位置,上面的红色是我们添加的

--defaults-fie就是指定配置文件/home/mysql2/.(这里用的是变量,在

该脚本的前面添上MY_CNF=/home/mysql2/. )

--user=mysql2如果不添加这个启动的时间会报错:pid文件创建没权限,估计是

默认用mysql用户,所以在这里要指定下。

现在就完成了

rpm mysql 启动 :service mysql start ;rcmysql start

二进制 mysql启动 :service mysql2 start

linux中mysql客户端本地登录时:

登录二进制mysql: mysql --port=3307 --socket=/tmp/ -u

root -p (二进制的我用的3307端口,socket文件用的/)

登录rpm的mysql: mysql -u root -p