zoukankan      html  css  js  c++  java
  • ubuntu环境下lnmp环境搭建(1)之Mysql

    1. vm下安装Ubuntu
    1)下载镜像ubuntu-15.04-desktop-amd64.iso
    http://yunpan.cn/cF5dwV6zw33ef 访问密码 ecba(个人分享在360网盘)
    2) 安装完成后,第一个处理问题就是中文转换--语言支持--更改用户的语言为中文
    3)虚拟机和主机交互需要安装linux的vmtools。
     
    2. mysql
    1)根据上面步骤就可以有一个基础的linux环境。也很方便我们拷贝和下载文件了。
    2)直接通过命令安装比较简单,如下
    sudo apt-get install mysql-server
    apt-get isntall mysql-client
    sudo apt-get install libmysqlclient-dev
     
    3)但是这样mysql 的路径都会是默认地址,和公司目录一样,我们更希望我们的应用在一个目录下,这样我们就需要编译安装。
     

    1. 安装环境:
    Ubuntu 15.04
    MySQL-5.6.21.tar.gz


    2. 安装必备的工具(保证mysql安装的基础环境)
    sudo apt-get install make bison g++ build-essential libncurses5-dev cmake


    3. 添加组合用户 设置安装目录权限
    sudo groupadd mysql(未做)
    sudo useradd –g mysql mysql –s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统(未做)

    说明:我的软件安装目录: /home/test/alidata/soft/
    sudo mkdir –p /home/test/alidata/soft/mysql #创建Mysql安装目录
    sudo mkdir -p /home/test/alidata/soft/mysql/data
    sudo mkdir -p /home/test/alidata/soft/mysql/log


    sudo chown -R mysql:mysql /usr/local/mysql/data(未做)
    sudo chown -R mysql:mysql /usr/local/mysql(未做)


    4. 编译安装mysql

    4.1 获取源码包
    cd //home/test/alidata/soft/
    sudo wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.23.tar.gz

    4.2 解压mysql源码包
    sudo tar –zxvf mysql-5.6.23.tar.gz


    5. 编译配置(先cmake设置配置, make 编译 , make install 拷贝到对应目录)
    cd mysql-5.6.23
    1)sudo cmake -DCMAKE_INSTALL_PREFIX=/home/test/alidata/soft/mysql -DSYSCONFDIR=/etc -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/test/alidata/soft/mysql/data -DWITH_DEBUG=0

    说明:

     -DCMAKE_INSTALL_PREFIX:mysql需要安装的目录(需要自定义)

     -DMYSQL_DATADIR:mysql数据需要存放的目录(需要自定义)

    注意事项:
    重新编译时,需要清除旧的对象文件和缓存信息。
    # make clean
    # rm -f CMakeCache.txt
    # rm -rf /etc/my.cnf


    2)sudo make -j4 #-j数字 表示以多核心运行

    时间最长,耐心等待,没有报错就是ok,有报错根据提示安装需要的应用
    3)sudo make install


    6. 相关配置
    6.1 配置开机启动
    sudo chmod +w /home/test/alidata/soft/mysql(增加权限)
    sudo cp ./support-files/my-default.cnf /etc/my.cnf
    sudo cp ./support-files/mysql.server /etc/init.d/mysqld
    sudo chmod 755 /etc/init.d/mysqld

    6.2 常用命令软连接,设置环境变量
    sudo ln -s /home/test/alidata/soft/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
    sudo ln -s /home/test/alidata/soft/mysql /usr/bin
    sudo ln -s /home/test/alidata/soft/mysql/bin/mysqladmin /usr/bin

    6.3 初始化数据库

    sudo /home/test/alidata/soft/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/home/test/alidata/soft/mysql --datadir=/home/test/alidata/soft/mysql/data --user=test

    说明:网上会默认的增加mysql用户,使用MySQL用户来作为mysql的主用户处理。我们已自己新建的test用户。


    7. 启动mysql服务试一试
    sudo /etc/init.d/mysqld start

    有问题看日志(重要):

    See "systemctl status mysqld.service" and "journalctl -xe" for details

    最后添加用户:

    adduser mysql

    说明:启动的时候发现还是有地方会需要mysql用户,所以又加上了。于是就ok了。呵呵呵。不过好处是使用test来运行mysql没有之前碰到的各种权限问题。

    8. 启动成功后创建root用户的密码(不要忘记哦)
    mysqladmin -u root password

    再次设置密码mysqladmin -u root password -p root


    9. 成功后使用一下
    mysql -uroot -p

    需要添加环境变量

    vim /etc/profile

    export PATH=/home/test/alidata/soft/mysql/bin:$PATH 

    source /etc/profile

    10. 开机启动mysql

    http://www.2cto.com/database/201312/265018.html

    sudo update-rc.d -f mysql.server defaults(提示找不到mysql.server命令就使用下面的命令)

    sudo update-rc.d -f mysqld defaults(或者)(在第6步赋值为mysqld所以这里使用的是该命令)

    取消开机启动

    sudo update-rc.d -f mysql.server remove

     关于cmake命令详解:

    注释:
    我把安装路径放在了/usr/local/mysql,也就是默认的路径,data放在/usr/local/mysql/data/下,sock文件放到/usr/local/mysql/mysqld.sock
    一些参数如下:根据需要选择吧。
    CMAKE_INSTALL_PREFIX:指定MySQL程序的安装目录,默认/usr/local/mysql
    DEFAULT_CHARSET:指定服务器默认字符集,默认latin1
    DEFAULT_COLLATION:指定服务器默认的校对规则,默认latin1_general_ci
    ENABLED_LOCAL_INFILE:指定是否允许本地执行LOAD DATA INFILE,默认OFF
    WITH_COMMENT:指定编译备注信息
    WITH_xxx_STORAGE_ENGINE:指定静态编译到mysql的存储引擎,MyISAM,MERGE,MEMBER以及CSV四种引擎默认即被编译至服务器,不需要特别指定。
    WITHOUT_xxx_STORAGE_ENGINE:指定不编译的存储引擎
    SYSCONFDIR:初始化参数文件目录
    MYSQL_DATADIR:数据文件目录
    MYSQL_TCP_PORT:服务端口号,默认3306
    MYSQL_UNIX_ADDR:socket文件路径,默认/tmp/mysql.sock

  • 相关阅读:
    bootstrap-datetimepicker 十年视图、年月视图 附源码
    java面向对象程序设计的五个特性
    简述rtsp,rtmp,http三个协议
    iOS 实现毛玻璃效果
    一个裁剪图片的小工具类,通过一句代码调用
    iOS 中的正则匹配(工具类方法)
    博客园不支持Markdown语法,新博客将发在简书...
    一行代码,让你的应用中UIScrollView的滑动与侧滑返回并存
    仿照微信的效果,实现了一个支持多选、选原图和视频的图片选择器,适配了iOS6-10系统,3行代码即可集成.
    分享一下我封装iOS自定义控件的体会,附上三个好用的控件Demo <时间选择器&多行输入框&日期选择器>
  • 原文地址:https://www.cnblogs.com/newbalanceteam/p/4910462.html
Copyright © 2011-2022 走看看