Chinaunix首页 | 论坛 | 博客
  • 博客访问: 186229
  • 博文数量: 25
  • 博客积分: 2030
  • 博客等级: 大尉
  • 技术积分: 335
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-05 02:49
文章分类

全部博文(25)

文章存档

2012年(1)

2011年(1)

2010年(2)

2009年(21)

我的朋友

分类: Mysql/postgreSQL

2009-08-09 10:15:56

1.创建必要的组和拥有者,安全为主,用受限用户mysql运行
# groupadd mysql
# useradd -g mysql mysql
2.编译安装
./configure --prefix=/home/service/database/mysql5/ \
> --sysconfdir=/etc/ \
> --with-extra-charsets=all \
> --with-unix-socket-path=/tmp/mysql.sock \
> --with-mysqld-user=butting \
#####################################################################################
参数说明:
--with-extra-charsets=CHARSET,CHARSET,...
                         Use charsets in addition to default (none, complex,
                          all, or a list selected from the above sets)

--with-unix-socket-path=SOCKET
                          Where to put the unix-domain socket.  SOCKET must be
                          an absolute file name.
--with-mysqld-user=username
                          What user the mysqld daemon shall be run as.
--with-extra-charsets=all 对多语言的支持
--with-unix-socket-path=/tmp/mysql.sock 这个是指定mysql服务器启动后,联机套接字文件所处的位置和文件名,也就是说,如果mysql服务器成功启动后,就能在/tmp 目录中看到mysql.sock文件。如果看不到,肯定是mysql启动不了。或者也可以以后使用ln -s /var/lib/mysql/mysql.sock /tmp/将/var/lib/mysql/mysql.sock 链接到 /tmp 目录下,并保持名称不变,如果不这样做的话,有时候可能mysql 启动时会报错,如 ERROR 200:Can’t connect to local MYSQL server throuht socket /tmp/mysql.sock.
--with-mysqld-user=butting 这个是让mysql服务器也能让系统中普通用户butting也能启动mysql服务器。用普通用户来启动mysql的好处是:mysql的进程会自己死掉自动退出。当然root用户也可以,不过有时mysql有些进程死了,但不会自动退出,root自己也杀不掉。所以用普通用户就有这样的好处,大多不会出现mysql进程已死,但不会退出的情况;
当您看到“Thank you for choosing MySQL!”时,说明成功。
也许会看到如下信息:
checking for termcap functions library... configure: error: No curses/termcap library found
这说明系统中某些库文件没有,那么我们要安装这些库文件。安装上libncurses5-dev (不同的系统可能名字也有所差异)这个包就好了
##############################################################################################

make && make install(make install之前可以先make test,一般报权限错误的话问题不大)
3.安装mysql数据库
# scripts/mysql_install_db mysql_install_db 是登陆mysql数据库服务器、创建所有必要的表并填入初始值的shell脚本
4.更新安装权限
# cd /home/service/database/
# mkdir /mysql5/var
# chown -R root mysql5
# chown -R root mysql5/var
# chgrp -R mysql mysql5
5.复制mysql配置文件到/etc下
# cp support-files/my-medium.cnf /etc/my.cnf

6.启动mysql
#cd /home/service/database/mysql5
# ./bin/mysqld_safe --user=mysql & 会报错
[1] 32298 [root@localhost mysql5]# 090809 15:29:23 mysqld_safe Logging to '/home/service/database/mysql5/var/localhost.localdomain.err'. 090809 15:29:23 mysqld_safe Starting mysqld daemon with databases from /home/service/database/mysql5/var 090809 15:29:24 mysqld_safe mysqld from pid file /home/service/database/mysql5/var/localhost.localdomain.pid ended [1]+ Done ./bin/mysqld_safe --user=mysql
主要是因为我们第四步更新权限的时候chown -R root mysql5/var时文件夹里面是空的,现在有很多文件了,而我们又是用root执行的操作,所以ll下发现里面都是root root的,权限问题,只要再执行一次 chown -R root mysql5/var就好了
7.修改root密码
# ./bin/mysqladmin -u root password "123456"
8.设置自动启动
[root@localhost rc.d]# cp /usr/local/src/mysql-5.1.37/support-files/mysql.server /etc/rc.d/init.d/mysql
[root@localhost rc.d]# chmod +x /etc/rc.d/init.d/mysql
[root@localhost rc.d]# ln -s /etc/rc.d/rc3.d/S99mysql
[root@localhost rc.d]# ln -s /etc/rc.d/init.d/mysql /etc/rc.d/rc0.d/K01mysql
[root@localhost rc.d]# ln -s /etc/rc.d/init.d/mysql /etc/rc.d/rc6.d/K01mysql
 
9.注册服务
[root@localhost rc.d]# chkconfig --add mysql
[root@localhost rc.d]# service mysql restart
阅读(4583) | 评论(0) | 转发(0) |
0

上一篇:bind安装

下一篇:源码安装apache2.2.13

给主人留下些什么吧!~~