欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MySQL SUSE SLES11安装与配置笔记实操

程序员文章站 2024-01-13 08:17:28
...

以下的文章主要介绍的是MySQL SUSE SLES11安装与配置笔记的实际操作过程,我们是在Linux下两个不同的版本MySQL安装实战(MySQL5和MySQL4)演示,以下就是文章的而具体内容描述。 Redhat9.2 安装MySQL5.0 fedora7安装MySQL (1) 下载 从MySQL官网 下载到最新的

以下的文章主要介绍的是MySQL SUSE SLES11安装与配置笔记的实际操作过程,我们是在Linux下两个不同的版本MySQL安装实战(MySQL5和MySQL4)演示,以下就是文章的而具体内容描述。

Redhat9.2 安装MySQL5.0

fedora7安装MySQL

(1) 下载

从MySQL官网 下载到最新的发行版本5.1.45,简单起见,直接下载SLES11的RPM版本:

  1. MySQL-server-community-5.1.45-1.sles11.i586.rpm
  2. MySQL-client-community-5.1.45-1.sles11.i586.rpm
  3. MySQL-shared-community-5.1.45-1.sles11.i586.rpm

对MySQL版本的选择,个人意见,如果是作为产品首先考虑稳定性和性能,功能够用即可,版本上谨慎保守一些,但是作为一般开发用用,追追新也无所谓。

(2) MySQL SUSE SLES11 安装

1. rpm安装

  1. 执行:rpm -ivh MySQL-server-community-5.1.45-1.sles11.i586.rpm
  2. Preparing... ########################################### [100%]
  3. 1:MySQL-server-community ########################################### [100%]
  4. MySQL 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  5. PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
  6. To do so, start the server, then issue the following commands:
  7. /usr/bin/MySQLadmin -u root password 'new-password'
  8. /usr/bin/MySQLadmin -u root -h ss-server password 'new-password'
  9. Alternatively you can run:
  10. /usr/bin/MySQL_secure_installation
  11. which will also give you the option of removing the test
  12. databases and anonymous user created by default. This is
  13. strongly recommended for production servers.
  14. See the manual for more instructions.
  15. Please report any problems with the /usr/bin/MySQLbug script!
  16. Starting MySQL. done
  17. Giving MySQLd 2 seconds to start

使用ps -ef | grep MySQL 可以看到msyqld进行已经启动。netstat -nat 可以看到默认的3306端口已经在监听。rpm的安装的确是够简单。

tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN

但是这样的默认安装,是没有指定安装路径的,因此MySQL不会MySQL SUSE SLES11 安装到我们期望的地点。因此只好重新来过,先卸载吧:

rpm -e MySQL-server-community-5.1.45-1.sles11

使用--prefix选项重新安装:

rpm -ivh --prefix=/work/soft/database/MySQL/ MySQL-server-community-5.1.45-1.sles11.i586.rpm

结果发生错误:

  1. error: package MySQL-server-community is not relocatable

居然不能重新定位MySQL SUSE SLES11 安装路径,这个就麻烦了。只好重新下载tarbell的版本MySQL-5.1.45.tar.gz,自己动手编译。

2. 编译

./configure --prefix=/work/soft/database/MySQL/MySQL5.1 --localstatedir=/work/soft/database/MySQL/MySQLdata --with-charset=utf8 --with-extra-charsets=all --with-client-ldflags=-all-static --with-MySQLd-ldflags=-all-static --with-unix-socket-path=/work/soft/database/MySQL/tmp/MySQL.sock

configure的过程中出现错误而中断:

  1. checking for termcap functions library... configure: error: No curses/termcap library found

先把这个东西装好

  1. gunzip ncurses-5.7.tar.gz
  2. tar xvf ncurses-5.7.tar
  3. cd ncurses-5.7/
  4. ./configure
  5. make
  6. make install

安装ncurses之后,重新configure成功,继续make,make install完成编译MySQL SUSE SLES11 安装。

然后执行scripts/MySQL_install_db.

  1. Installing MySQL system tables...
  2. OK
  3. Filling help tables...
  4. OK
  5. To start MySQLd at boot time you have to copy
  6. support-files/MySQL.server to the right place for your system
  7. PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
  8. To do so, start the server, then issue the following commands:
  9. /work/soft/database/MySQL/MySQL5.1/bin/MySQLadmin -u root password 'new-password'
  10. /work/soft/database/MySQL/MySQL5.1/bin/MySQLadmin -u root -h ss-server password 'new-password'
  11. Alternatively you can run:
  12. /work/soft/database/MySQL/MySQL5.1/bin/MySQL_secure_installation
  13. which will also give you the option of removing the test
  14. databases and anonymous user created by default. This is
  15. strongly recommended for production servers.
  16. See the manual for more instructions.
  17. You can start the MySQL daemon with:
  18. cd /work/soft/database/MySQL/MySQL5.1 ; /work/soft/database/MySQL/MySQL5.1/bin/MySQLd_safe &
  19. You can test the MySQL daemon with MySQL-test-run.pl
  20. cd /work/soft/database/MySQL/MySQL5.1/MySQL-test ; perl MySQL-test-run.pl
  21. Please report any problems with the /work/soft/database/MySQL/MySQL5.1/bin/MySQLbug script!

接着很重要的事情,设置MySQLd的开机启动:

  1. cp support-files/MySQL.server /etc/init.d/MySQL
  2. chkconfig MySQL on

为了方便,将MySQL 的bin目录加到PATH中,在/etc/profile中加入myslq/bin,顺便增加两个别名方便操作:

  1. export PATH=$JAVA_HOME/bin:$SOFT_ROOT/database/MySQL/MySQL5.1/bin:$PATH
  2. alias MySQL_start="MySQLd_safe&"
  3. alias MySQL_stop="MySQLadmin -uroot -p shutdown"

3. 配置

按照普遍推荐的标准设置,需要增加MySQL的user和group:不过上面的MySQL SUSE SLES11 安装过程结束后,发现已经存在名为MySQL的user和group了:

  1. ss-server:/etc # groupadd MySQL
  2. groupadd: Group `MySQL' already exists.
  3. ss-server:/etc # useradd MySQL -g MySQL
  4. useradd: Account `MySQL' already exists.

用ps命令可以看到

  1. ss-server:/etc # ps -ef | grep MySQL
  2. root 3743 1 0 18:58 ? 00:00:00 /bin/sh
    /work/soft/database/
    MySQL/MySQL5.1/bin/MySQLd_safe --datadir=
    /work/soft/database/
    MySQL/MySQLdata --pid-file=/
    work/soft/database/
    MySQL/MySQLdata/ss-server.pid
  3. MySQL 3799 3743 0 18:58 ? 00:00:00 /work/soft/database/MySQL/MySQL5.1
    /libexec/
    MySQLd --basedir=/work/soft/database/MySQL/MySQL5.1
    --datadir=/work/soft/database/MySQL/MySQLdata --user=MySQL --log-error
    =/work/soft/database/MySQL/MySQLdata/ss-server.err --pid-file=/work/soft
    /database/
    MySQL/MySQLdata/ss-server.pid

这里MySQLd是以MySQL用户的身份启动的。

以下是标准的MySQL SUSE SLES11 安装设置了

1. 设置root帐户的密码

  1. MySQLadmin -u root password 'yourpassword'

2. 本机登录MySQL, 需要做的事情有: 删除本机匿名连接的空密码帐号;容许root用户是不允许远程登录。

  1. MySQL -uroot -p

然后输入上面设置的密码,登录后在MySQL的命令行中执行:

  1. MySQL>use MySQL;
  2. MySQL>delete from user where password="";
  3. MySQL>update user set host = '%' where user = 'root';
  4. MySQL>flush privileges;
  5. MySQL>quit

对于root账号,如果考虑安全应该新建其他账号用于远程登录,root账号可以不必开启远程登录。不过对于一般使用,没有太多安全需求,允许root用户远程登录可以方便管理,毕竟使用专用管理软件的图形界面在操作方面要方便的多。