MYSQL5.1和5.5的编译安装

mysql5.1.60编译安装

         1、tar -zxvfmysql*

         2、./configure 之前要make clean

                   ./configure--prefix=/home/shk/mysql-5.1.60 \

                   --enable-local-infile\

                   --with-unix-socket-path=/home/shk/mysql-5.1.60/var/mysql.sock\

                   --with-tcp-port=5506\

                   --enable-thread-safe-client\

                   --with-mysqld-user=root\

                   --with-extra-charsets=gb2312,big5,gbk,binary,ascii,latin1\

                   --with-charset=utf8\

                   --with-federated-storage-engine\

                   --with-partition

 

                   注释:在执行“makeclean”失败时,提示错误checking for termcap functions library... configure: error:Nocurses/termcap library found 。

                   则在执行./configure命令,执行命令代码为:

                   ./configure--prefix=/usr/share/mysql/-with-charset=utf8 -with-extra-charsets=all –with-named-curses-libs=/usr/lib/libncursesw.so.5(最后一段命令可以省略)

 

                   出现错误:No curses/termcaplibrary found  或者seetheinstall manual chapter in the reference

                   yum–y install gcc    yum installncurses-devel

                   在安装gcc时,出错libstdc++-devel*安装不上,则手动下一个libstdc++-devel*.rpm包装上,

                   在用rpm安装libstdc++-devel*.rpm时报错:error:Failed dependencies,

                   则用命令:rpm -ivhlibstdc++*.rpm --nodeps --force

         3、make

                   如果报错,则减少configure的项

         4、make install

         5、建立MYSQL的启动文件

                   #chown-R root:mysql /usr/local/mysql

                   #chown-R mysql:mysql /usr/local/mysql/data

                   #chown-R mysql:mysql /usr/local/mysql/lib

 

                   #cd/usr/local/mysql/bin/

                   #./mysql_install_db--user=mysql

                   #cp/usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysqld

                   #cp/usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf

         6、启动MySQL

                   #/usr/local/mysql/share/mysql/mysql.serverstart

 

mysql5.5.31编译安装

         1、下载安装编译MySQL源码需要的库

       yum install gcc gcc-c++ ncurses-devel

       yum install cmake bison

         2、添加mysql用户组和用户

            groupadd mysql 

             useradd -g mysql mysql 

         3、创建MySQL软件安装目录和数据存放目录

              mkdir -p /opt/mysql   #MySQL安装目录 

              chown -R mysql:mysql /opt/mysql 

              mkdir -p /data/mysql  #MySQL数据存放目录 

              mkdir -p /data/mysql/data #存放数据 

              mkdir -p /data/mysql/log  #存放日志 

              mkdir -p /data/mysql/tmp  #存放临时文件 

              chown -R mysql:mysql /data/mysql 

 

         4、cmake编译安装MySQL

             tar -zxvf mysql-5.6.13.tar.gz 

             cd mysql-5.6.13 

             cmake . -DCMAKE_INSTALL_PREFIX=/opt/mysql\  

       -DMYSQL_DATADIR=/data/mysql \                 

       -DSYSCONFDIR=/opt/mysql \                      

       -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \

       -DDEFAULT_CHARSET=utf8 \

       -DDEFAULT_COLLATION=utf8_general_ci \

       -DWITH_EXTRA_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_USER=mysql

 

             make 

             make install 

             参数说明:

             -DCMAKE_INSTALL_PREFIX=/opt/mysql        //指定安装目录

             -DINSTALL_DATADIR=/data/mysql            //指定数据存放目录

             -DSYSCONFDIR=/opt/mysql                  //指定配置文件目录(本例的配置文件为/opt/mysql/my.cnf)

             -DDEFAULT_CHARSET=utf8                   //指定字符集

             -DDEFAULT_COLLATION=utf8_general_ci      //指定校验字符

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

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

             上述步骤执行成功后,MySQL软件已成功安装至/opt/mysql目录下。

 

         5、编辑配置文件my.cnf涉及到的路径一定要和上面的配置相同

             [client] 

             port           =3306

             socket = /opt/mysql/run/mysql.sock 

              

             [mysql] 

              

             [mysqld_safe] 

             pid-file = /opt/mysql/run/mysqld.pid

             socket = /opt/mysql/run/mysql.sock

             nice           =0

              

             [mysqld] 

              

             #### Baes dir #### 

             basedir = /opt/mysql 

             datadir = /data/mysql/data 

             tmpdir = /data/mysql/tmp 

             socket = /opt/mysql/run/mysql.sock 

             user=mysql

             #### Base configure info #### 

             port = 3306 

               

             skip-external-locking

             #

             # Instead of skip-networking the default isnow to listen only on

             # localhost which is more compatible and isnot less secure.

             #bind-address           = 127.0.0.1

             #

             # * Fine Tuning

             #

             key_buffer                 =16M

             max_allowed_packet       = 16M

             thread_stack            = 192K

             thread_cache_size       = 8

             # This replaces the startup script andchecks MyISAM tables if needed

             # the first time they are touched

             myisam-recover         = BACKUP

             #max_connections        = 100

             #table_cache            = 64

             #thread_concurrency     = 10

             #

             # * Query Cache Configuration

             #

             query_cache_limit   = 1M

             query_cache_size        = 16M

             #

             # * Logging and Replication

             #

             # Both location gets rotated by thecronjob.

             # Be aware that this log type is aperformance killer.

             # As of 5.1 you can enable the log at runtime!

             #general_log_file        = /var/log/mysql/mysql.log

             #general_log             = 1

             log-error = /data/mysql/log/alert.log 

             slow_query_log_file=/data/mysql/log/slow.log 

             # Here you can see queries with especiallylong duration

             #log_slow_queries  = /var/log/mysql/mysql-slow.log

             #long_query_time = 2

             #log-queries-not-using-indexes

              

             #### Binary log && Relay log#### 

             #binlog_format='MIXED' 

             log-bin = /data/mysql/log/mysql-bin 

             log-slave-updates = 1 

             relay-log =/data/mysql/log/mysqld-relay-bin 

             relay-log-index =/data/mysql/log/mysqld-relay-bin.index 

             master-info-file =/data/mysql/log/master.info 

             relay-log-info-file =/data/mysql/log/relay-log.info 

            max_binlog_size = 100M  

            

             [mysqldump]

             quick

             quote-names

             max_allowed_packet       = 16M

            

             [mysql]

             #no-auto-rehash      # faster start of mysql but no tab completition

            

             [isamchk]

             key_buffer                 =16M

    6、相关配置

        cd /opt/mysql/support-files/

       cp my-large.cnf /data/mysql/my.cnf

       cp mysql.server /etc/rc.d/init.d/mysqld

   

         7、创建数据库

             /opt/mysql/scripts/mysql_install_db \

       --user=mysql \

       --default-files=/var/mysql/my.cnf \

       --basedir=/opt/mysql \

       --datadir=/data/mysql/data \

       --user=mysql

             上述建库语句将根据my.cnf里设置的数据文件目录和日志文件目录,生成相应的数据文件和日志文件,并创建系统数据库(如mysql,test,information_schema,performance_schema)

    8、 在/etc/profile 文件中增加

             export PATH=$PATH:/opt/mysql/bin

       source /etc/profile

             cp /opt/mysql/support-files/mysql.server/etc/init.d/mysqld #把Mysql加入系统启动 

       chmod +x /etc/init.d/msyqld

       vim /etc/init.d/mysqld          //查找相关配置项并进行修改

       basedir=/opt/mysql

       datadir=/var/mysql/data

 

         9、启动MySQL

       chkconfig --add mysqld

       chkconfig --level 345 mysqld on

       service mysqld start

             启动成功后,就可以以root用户登录(默认的root用户没有密码)

             /opt/mysql/bin/mysql -u root 

                   查看是否可以登录

         10、设置root密码

             mysqladmin -u root password '123456a?' 

             mysql -uroot -p 

             GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '123456a?' WITH GRANT OPTION;

          

         11、最后,把MySQL加入系统启动项和开机启动

             update-rc.d -f mysqld defaults #加入开机启动 

 

错误与解决:

         1、错误信息:Theserver quit without updating PID file

         解决:配置信息可能太多,适当的删除参数,各个和mysql相关的文件都要把文件所有者设置成mysql:mysql

         2、注意文件权限问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值