linux 下安装 mysql 数据库

1 mysql5.5以后需要安装cmake (自行下载cmake源码安装包)

   1)tar -zxv -f cmake-2.8.9.tar.gz
   2)cd cmake-2.8.9
   3)./configure
   4)make && make install

2 安装mysql 
   先执行安装 yum install ncurses-devel -y
   在先执行安装 yum install bison -y

   先检查一下mysql是否已经存在了,如果存在就删除mysql
   
   rpm -qa | grep mysql   (检查mysql是否存在 我的显示 mysql-libs-5.1.71-1.el6.i686)

   rpm -e mysql-libs-5.1.71-1.el6.i686 --nodeps  (有就删除)
   
  1)创建mysql的安装目录及数据库存放目录 
    mkdir -p /usr/local/mysql                 #安装mysql
    mkdir -p /usr/local/mysql/data            #存放数据库
    所有 mysql 用到的安装目录都需要自己创建(这里不在一一创建)

  3)创建mysql用户及用户组
   groupadd mysql  
   useradd -r -g mysql mysql
   (自行下载在 mysql 源码安装包解压进入解压 目录)

  4)cmake .\
    -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql \ 指向mysql安装目录
    -DINSTALL_SBINDIR=/usr/local/webserver/mysql/sbin \ 指向可执行文件目录(prefix/sbin)
    -DMYSQL_DATADIR=/usr/local/webserver/mysql/data \   指向mysql数据文件目录(/var/lib/mysql)
    -DSYSCONFDIR=/usr/local/webserver/mysql/etc/ \  指向mysql配置文件目录(/etc/mysql)
    -DINSTALL_PLUGINDIR=/usr/local/webserver/mysql/lib/mysql/plugin \ 指向插件目录(prefix/lib/mysql/plugin)
    -DINSTALL_INCLUDEDIR=/usr/local/webserver/mysql/include/mysql \   指向头文件目录(prefix/include/mysql)
    -DINSTALL_MANDIR=/usr/local/webserver/mysql/share/man \     指向man文档目录(prefix/share/man)
    -DINSTALL_SHAREDIR=/usr/local/webserver/mysql/share \       指向aclocal/mysql.m4安装目录(prefix/share)
    -DINSTALL_LIBDIR=/usr/local/webserver/mysql/lib/mysql \     指向对象代码库目录(prefix/lib/mysql)
    -DINSTALL_INFODIR=/usr/local/webserver/mysql/share/info  \  指向info文档存放目录(prefix/share/info)
    -DMYSQL_TCP_PORT=3306 \                        指定TCP端口为3306
    -DMYSQL_UNIX_ADDR=/var/run/mysql/mysqld.sock \ 指定mysql.sock路径 (这个目录需要给写权限 不然启动mysql会报错)
    -DENABLED_LOCAL_INFILE=1 \                  启用本地数据导入支持
    -DEXTRA_CHARSETS=all \                      启用额外的字符集类型(默认为all)
    -DDEFAULT_CHARSET=utf8     \                指定默认的字符集为utf8
    -DDEFAULT_COLLATION=utf8_general_ci \       设定默认排序规则(utf8_general_ci快速/utf8_unicode_ci准确)
    -DWITH_EMBEDDED_SERVER=1 \                  编译嵌入式服务器支持
    -DMYSQL_USER=mysql \                        指定mysql用户(默认为mysql)
    -DWITH_DEBUG=0 \                            禁用debug(默认为禁用)
  
    5) 编译成功后运行 make && make install


    6)配置

   【1】安装完成后复制配置文件和启动脚本:

    cp /usr/local/webserver/mysql/support-files/my-medium.cnf /etc/my.cnf         # 复制配置文件
    cp /usr/local/webserver/mysql/support-files/mysql.server /etc/init.d/mysqld   # 复制启动脚本

    chkconfig --add mysqld

    chmod +x /etc/init.d/mysqld                                         # 给启动脚本执行权限

   【2】 初始化Mysql (创建系统数据库的表)

    (1) /usr/local/webserver/mysql/scripts/mysql_install_db \
        --basedir/usr/local/webserver/mysql/ \
        --datadir=/usr/local/webserver/mysql/data/ \
        --user=mysql

    (2) /usr/local/webserver/mysql/bin/mysqld_safe& \
        --user=mysql --basedir/usr/local/webserver/mysql/  --datadir=/usr/local/webserver/mysql/data/
     或  
       /usr/local/webserver/mysql/bin/mysqld_safe&

   【3】 Mysql配置开机启动

    chkconfig --level 2345 mysqld on

   【4】为了MySQL能正常使用我们需要更改一下MySQL安装目录和MySQL的数据库目录的属主和属组:

    chown -R root.mysql /usr/webserver/local/mysql/            # 更改安装目录属主为root,属组为mysql
    chown -R mysql.mysql /usr/webserver/local/mysql/data/      # 更改数据库目录属主和属组都为mysql

   【5】设置环境变量
     vi /root/.bash_profile

     在PATH=$PATH:$HOME/bin添加参数为:
 
     PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib

     source /root/.bash_profile     #执行后立即生效

   【6】 设置mysql密码
    例如你的 root用户现在没有密码,你希望的密码修改为123456,那么命令是:
    mysqladmin -u root password 123456

    如果你的root现在有密码了(123456),那么修改密码为abcdef的命令是:
    mysqladmin -u root -p password abcdef
    注意,命令回车后会问你旧密码,输入旧密码123456之后命令完成,密码修改成功。

   【7】配置Mysql数据库准许远程访问
      
      # 登录Mysql
        /usr/local/mysql/bin/mysql -h127.0.0.1 -uroot -p

      # 进入Mysql表
        use mysql;

      # 为root添加远程连接的能力(需要先关闭linux防火墙)

       1) 重启后生效
        开启: chkconfig iptables on
        关闭: chkconfig iptables off

        2) 即时生效,重启后失效
        开启: service iptables start
        关闭: service iptables stop
        需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作。
        在开启了防火墙时,做如下设置,开启相关端口,
        修改/etc/sysconfig/iptables 文件,添加以下内容:
        -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
        -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

        3) grant all privileges on *.*  to  'root'@'%'  identified by 'youpassword'  with grant option;

      # 查询表
        select Host,User,Password  from user where User='root'; 
 
      # 更新表 (修改密码)
        update user set Password = password('123456') where User='root';

      # 刷新Mysql权限
        flush privileges;
      #退出 重新登录
        exit;
        mysql -u root -p

      #若还不能进行远程连接,则关闭防火墙
      /etc/rc.d/init.d/iptables stop

   【8】查为了以后方便我们为所有的二进制可执行文件和动态链接库文件做一个软连接:

     ln -s /usr/local/mysql/bin/* /usr/local/bin/              # 为可执行的二进制文件做软连接
     ln -s /usr/local/mysql/lib/mysql/lib* /usr/lib/  # 为动态链接库做一个软连接

   【9】配置完毕后我们启动mysql:

     service mysqld start

   【10】查看Mysql进程/端口

     netstat -an |grep 3306
     ps -le | grep mysqld
     ps aux | grep mysqld

转载于:https://my.oschina.net/u/2285190/blog/823758

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值