如何编码 Auto Mysql 5.5.5 安装 Freebsd shell 脚本
How to code Auto Mysql 5.5.5 Install for Freebsd shell Script
大家好我正在尝试编写自动代码 mysql 5.5.x freebsd 安装脚本我正在使用此代码
portsnap fetch extract
cd /usr/ports/databases/mysql55-client ; make install clean
cd /usr/ports/databases/mysql55-server ; make install clean
echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/local/etc/rc.d/mysql-server onestart
rehash
mysqladmin -uroot password "password"
/usr/local/etc/rc.d/mysql-server onerestart
mysql -p password
GRANT ALL PRIVILEGES ON *.* TO 'mt2'@'localhost' IDENTIFIED BY 'mt2!@#' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
flush privileges;
quit
/usr/local/etc/rc.d/mysql-server onerestart
reboot
我首先遇到了 2 个问题 mysql -p password code is not typing password it asking password again.Second 有时会出现此屏幕并安装 stopping.What 我必须在此选择屏幕 "ok" 或 "cancel" 并且有没有办法自动通过此屏幕。
使用干净的 freebsd 10+ 并在控制台中键入此命令:
pkg install mysql55-server
添加 rc.conf,创建用户,就是这样。
如果您想进行自动安装,请使用包而不是端口。如您所见,在端口树中,您可能会被要求选择编译时选项。软件包是使用默认选项构建的,因此它们不会那样做。
所以要安装 mysql
,请使用:
pkg install -y mysql55-server
(这将同时安装服务器和客户端。)
注意 -y
标志的使用。否则 pkg
将要求您确认是否要安装。
另请注意,您不需要在 /etc/rc.conf
中拥有 mysql_enable
即可启动服务 一次。一次启动服务的现代方式是;
service mysql-server onestart
根据 manual,如果您使用 -p
选项,则选项和密码之间不能有 space。所以你应该使用 mysql -pYOURPASS
或 mysql --password YOURPASS
.
此外,要在 shell 脚本中输入命令,您应该使用 here-document。假设您在 shell-脚本中使用 /bin/sh
;
mysql --password YOURPASS << END
GRANT ALL PRIVILEGES ON *.* TO 'mt2'@'localhost' IDENTIFIED BY 'mt2!@#' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
flush privileges;
quit
END
在使用 onerestart
重新启动之前重新启动 mysql 服务器不是很有用。
大家好我正在尝试编写自动代码 mysql 5.5.x freebsd 安装脚本我正在使用此代码
portsnap fetch extract
cd /usr/ports/databases/mysql55-client ; make install clean
cd /usr/ports/databases/mysql55-server ; make install clean
echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/local/etc/rc.d/mysql-server onestart
rehash
mysqladmin -uroot password "password"
/usr/local/etc/rc.d/mysql-server onerestart
mysql -p password
GRANT ALL PRIVILEGES ON *.* TO 'mt2'@'localhost' IDENTIFIED BY 'mt2!@#' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
flush privileges;
quit
/usr/local/etc/rc.d/mysql-server onerestart
reboot
我首先遇到了 2 个问题 mysql -p password code is not typing password it asking password again.Second 有时会出现此屏幕并安装 stopping.What 我必须在此选择屏幕 "ok" 或 "cancel" 并且有没有办法自动通过此屏幕。
使用干净的 freebsd 10+ 并在控制台中键入此命令:
pkg install mysql55-server
添加 rc.conf,创建用户,就是这样。
如果您想进行自动安装,请使用包而不是端口。如您所见,在端口树中,您可能会被要求选择编译时选项。软件包是使用默认选项构建的,因此它们不会那样做。
所以要安装 mysql
,请使用:
pkg install -y mysql55-server
(这将同时安装服务器和客户端。)
注意 -y
标志的使用。否则 pkg
将要求您确认是否要安装。
另请注意,您不需要在 /etc/rc.conf
中拥有 mysql_enable
即可启动服务 一次。一次启动服务的现代方式是;
service mysql-server onestart
根据 manual,如果您使用 -p
选项,则选项和密码之间不能有 space。所以你应该使用 mysql -pYOURPASS
或 mysql --password YOURPASS
.
此外,要在 shell 脚本中输入命令,您应该使用 here-document。假设您在 shell-脚本中使用 /bin/sh
;
mysql --password YOURPASS << END
GRANT ALL PRIVILEGES ON *.* TO 'mt2'@'localhost' IDENTIFIED BY 'mt2!@#' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
flush privileges;
quit
END
在使用 onerestart
重新启动之前重新启动 mysql 服务器不是很有用。