zoukankan      html  css  js  c++  java
  • CentOS 下编译安装MySQL

    CnetOS 下编译安装 MySql

    查看是否存在旧版本:

    rpm -qa | grep mysql

    卸载旧版本:

    rpm -e mysql   #普通删除模式

    rpm -e --nodeps mysql   #强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

    安装编译代码需要的包

    yum -y install make

    yum –y install gcc-c++

    yum –y install cmake

    yum –y install bison-devel

    yum –y install ncurses-devel

    解压源码:

    tar –zxvf mysql-5.5.20.tar.gz

    cd mysql-5.5.20

    cmake

    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql

    -DMYSQL_DATADIR=/usr/local/mysql/data

    -DDEFAULT_CHARSET=utf8

    -DDEFAULT_COLLATION=utf8_general_ci

    -DEXTRA_CHARSETS=all

    -DENABLED_LOCAL_INFILE=1

    -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock

     

     

    -DSYSCONFDIR=/etc

    -DWITH_MYISAM_STORAGE_ENGINE=1

    -DWITH_INNOBASE_STORAGE_ENGINE=1

    -DWITH_MEMORY_STORAGE_ENGINE=1

    -DMYSQL_TCP_PORT=3306

    -DENABLED_LOCAL_INFILE=1

    -DWITH_PARTITION_STORAGE_ENGINE=1

    加粗部分为必须

    参数说明:

    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql        //安装目录

    -DINSTALL_DATADIR=/usr/local/mysql/data         //数据库存放目录

    -DDEFAULT_CHARSET=utf8                        //使用utf8字符

    -DDEFAULT_COLLATION=utf8_general_ci            //校验字符

    -DEXTRA_CHARSETS=all                            //安装所有扩展字符集

    -DENABLED_LOCAL_INFILE=1                        //允许从本地导入数据

    注意事项:

    重新编译时,需要清除旧的对象文件和缓存信息。

    # make clean

    # rm -f CMakeCache.txt

    # rm -rf /etc/my.cnf

     

     

    查看编译是否正确完成

    echo $? #返回0表示正确完成

     

    编译并安装

    make && make install

    echo $? #查看是否成功安装.

     

     

    配置mysql

     

    使用下面的命令查看是否有mysql用户及用户组

    cat /etc/passwd 查看用户列表

    cat /etc/group  查看用户组列表

     

    如果没有就创建

    groupadd mysql

    useradd -g mysql mysql

     

     

    配置目录权限

    cd /usr/local/lamp/mysql/

    chown -R root:mysql . #把当前目录中所有文件的所有者所有者设为root,所属组为mysql

    chown -R mysql:mysql data

     

     

    将mysql的启动服务添加到系统服务中

    cp support-files/my-medium.cnf /etc/my.cnf

     

     

     

    创建系统数据库的表

    cd /usr/local/lamp/mysql

    scripts/mysql_install_db

     

     

    设置环境变量

    vi /root/.bash_profile
            在PATH=$PATH:$HOME/bin添加参数为:
            PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
    source /root/.bash_profile 生效文件

     

     

     

    启动MySQL

    cp support-files/mysql.server /etc/init.d/mysqld

    chkconfig –add mysqld

    service mysqld start  --启动MySQL

     

     

     

    修改MySQL的root用户的密码以及打开远程连接

    mysql -u root mysql

    mysql>use mysql;
    mysql>desc user;
    mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";  //为root添加远程连接的能力。
    mysql>update user set Password = password('xxxxxx') where User='root';
    mysql>select Host,User,Password  from user where User='root';
    mysql>flush privileges;
    mysql>exit

     

     

     

    重新登录:

    mysql -u root –p

     

    若还不能进行远程连接,则关闭防火墙

    /etc/rc.d/init.d/iptables stop

     

     

     

     

     

    新增用户后,出现新用户无法登陆的情况时候,登陆数据库,删除空用户就可以登陆。

    delete from user where user is null;

    delete from user where user='';

    FLUSH PRIVILEGES;

     

    之所以成功,因为有坚持。。。
  • 相关阅读:
    python 正则表达式
    Python 集合
    Python 类的使用
    Python 分支、循环语句
    Python 基础之字典(dict)的用法
    Python 之字符串常用操作
    python tuple元组操作
    Python list的常用操作
    appium 二次切换webview后无法找到页面元素
    Locust API 文档
  • 原文地址:https://www.cnblogs.com/heyunxu/p/5246206.html
Copyright © 2011-2022 走看看