2009-08-21

    linux 安装Mysql - [mysql]

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://bbayou.blogbus.com/logs/44777957.html

    很简单,但是,草,过程很痛苦,因为少做一步,最后真是要骂街了。

    # useradd mysql

    # tar zxvf mysql-5.0.56.tar.gz  //解压
    # cd /home/changyou/
    mysql-5.0.56 
    # ./configure --prefix=/Apps/mysql  // 指定安装目录,公司的应用都在这里,怪异
    --without-debug //去除debug模式
    --with-extra-charsets=gb2312 //添加gb2312中文字符支持
    --enable-assembler //使用一些字符函数的汇编版本
    --without-isam //去掉isam表类型支持 现在很少用了 isam表是一种依赖平台的表
    --without-innodb //去掉innodb表支持 innodb是一种支持事务处理的表,适合企业级应用
    --with-pthread //强制使用pthread库(posix线程库)
    --enable-thread-safe-client //以线程方式编译客户端
    --with-client-ldflags=-all-static 
    --with-mysqld-ldflags=-all-static //以纯静态方式编译服务端和客户端

    # make
    # make install
    # scripts/mysql_install_db //生成mysql用户数据库和表文件,草,就是这里!!
    # cp support-files/my-medium.cnf /etc/my.cnf  //copy配置文件,有large,medium,small三个环境下的,根据机器性能选择,如果负荷比较大,可修改里面的一些变量的内存使用值
    # cp support-files/mysql.server /etc/init.d/mysqld  //copy启动的mysqld文件
    # chmod 700 /etc/init.d/mysqld
    # cd /
    Apps/
    # chmod 750 mysql -R
    # chgrp mysql mysql -R

    # chown mysql mysql/var -R    (如果没有var目录,可以自己建一个,记得权限)
    # cd /
    Apps/mysql/libexec
    # cp mysqld mysqld.old
    # strip mysqld
    # chkconfig --add mysqld
    # chkconfig --level 345 mysqld on
    # service mysqld start
    # netstat -atln
    看看有没有3306的端口打开,如果mysqld不能启动,看看/web/mysql/var下的出错日志,一般都是目录权限没有设置好的问题
    # ln -s /
    Apps/mysql/bin/mysql /sbin/mysql
    # ln -s /
    Apps/mysql/bin/mysqladmin /sbin/mysqladmin
    # mysqladmin -uroot password "youpassword"   //设置root帐户的密码
    # mysql -uroot -p
    # 输入你设置的密码
    mysql>use mysql;
    mysql>delete from user where password=""; #删除用于本机匿名连接的空密码帐号
    mysql>flush privileges;
    mysql>quit


    注意,如果mysql服务启动不了,提示:
    Starting MySQL/etc/init.d/mysqld: line 159: kill: (21755) - No such process
    看看是否是启动脚本的问题。
    编辑mysqld:
    #vi /etc/init.d/mysqld
    找到类似这样一行:
    $bindir/mysqld_safe --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &
    改为(加上参数--user=root):
    $bindir/mysqld_safe --user=root --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &

    然后再试:
    service mysqld start


    收藏到:Del.icio.us




    Tag:linux Mysql
    引用地址:

    评论

  • 你真可爱.