您的位置:首页 > 数据库 > MySQL

install mysql from source code on ubuntu system.

2013-01-06 17:10 513 查看
操作系统:ubuntu 11.04

、安装所需要系统库相关库文件

2、创建mysql安装目录
  # mkdir -p /usr/local/mysql/
4、创建用户和用户组与赋予数据存放目录权限
  # groupadd mysql
  # useradd -g mysql mysql
  # chown mysql.mysql -R /usr/local/mysql/
5、安装cmake(mysql5.5以后是通过cmake来编译的)
  # wget http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz   # tar zxvf cmake-2.8.4.tar.gz
  # cd cmake-2.8.4
  #./configure
  # make && make install

初始工具:gcc,cmake,make

增加用户组和用户

shell> sudo groupadd mysql

shell> sudo useradd -r -g mysql mysql

将压缩包.tar.gz解压缩到所需的目录

进入解压缩的目录

shell> sudo cmake .

安装遇到错误:

– MySQL 5.5.11

– Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)

CMake Error at cmake/readline.cmake:82 (MESSAGE):

Curses library not found. Please install appropriate package,

remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu , package name is libncurses5-dev ,

on RedHat and derivates it is ncurses-devel.

Call Stack (most recent call first):

cmake/readline.cmake:126 (FIND_CURSES)

cmake/readline.cmake:216 (MYSQL_USE_BUNDLED_LIBEDIT)

CMakeLists.txt:256 (MYSQL_CHECK_READLINE)

– Configuring incomplete, errors occurred!

下载工具libncurses5-dev,如果在RedHat 下是ncurses-devel。

下载之后先移除目录中的CMakeCache.txt

然后输入

shell> sudo cmake .

遇到警告:

Warning: Bison executable not found in PATHWarning: no usable bison found, /usr/src/mysql-5.5.11/sql/sql_yacc.yy will not be rebuilt.

下载工具:bison

下载之后先移除目录中的CMakeCache.txt

然后输入

shell> sudo cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
(more options:
常用的选项有下边这些:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
#安装目录
-DMYSQL_DATADIR=/usr/local/mysql/data \
#数据库存放目录
-DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \
#Unix socket 文件路径
-DWITH_MYISAM_STORAGE_ENGINE=1 \
#安装 myisam 存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
#安装 innodb 存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
#安装 archive 存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
#安装 blackhole 存储引擎
-DWITH_PARTITION_STORAGE_ENGINE=1 \
#安装数据库分区
-DENABLED_LOCAL_INFILE=1 \
#允许从本地导入数据
-DWITH_READLINE=1 \
#快捷键功能
-DWITH_SSL=yes \
#支持 SSL
-DDEFAULT_CHARSET=utf8 \
#使用 utf8 字符
-DDEFAULT_COLLATION=utf8_general_ci \
#校验字符
-DEXTRA_CHARSETS=all \
#安装所有扩展字符集
-DMYSQL_TCP_PORT=3306 \
#MySQL 监听端口
)

没有警告和错误发生,然后输入

shell> sudo make

shell> sudo make install

编译结束

shell> cd /usr/local/mysql

shell>sudo chown -R mysql . //修改mysql目录的所有者

shell> sudo chgrp -R mysql . //修改mysql目录的所有群组

shell> scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data
#Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist

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

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

chmod 755 /etc/init.d/mysqld

/etc/init.d/mysqld start

/usr/local/mysql/bin/mysql -u root -p
#for muliti-servers, we may need to add more parameters([P |--port=] 3306 [S|--socket=] /tmp/mysqld.sock)

mysql>use mysql ;
mysql>update user set password=PASSWORD("bjsyx825") where user='root';
mysql>FLUSH PRIVILEGES;

Connect from remote server
1. Open mysql client with terminal
mysql [-h 127.0.0.1|localhost ] -u root -pjmbkeyes
2. run sql
mysql>use mysql;
mysql>grant all on *.* to root@'%' identified by 'password';

Create new login for mysql server with permissions.
mysql>create user user1@'%' identified by 'user1'
mysql>grant all on *.* to user1@'%' identified by 'user1';
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: