安装系统包:
安装glib*的包 强制安装--force --nodeps
安装kernel-delvel包和kernel-headers包
安装gcc*包
安装automake包和autoconf包
安装zlib*包
安装libxml包
安装ncurses-devel*包
安装libtool-ltdl-devel包
安装libstdc++*包
安装系统包很简单:
直接把系统盘挂载在linux下面,mount /dev/cdrom/ /usb/把系统挂载在usb下面
rpm –ivh安装包的名称
--force --nodeps 放在安装包的后面,强制安装,去掉依存关系
安装mysql5.5需要先安装cmake用cmake编译安装mysql5.5
安装cmake
tar–zxvf cmake-2.8.7X
cd cmake-2.8.7
./configure
Make
Make install
mkdir -p /data/mysql/创建数据库存放目录
创建用户和用户组与赋予数据存放目录权限[root@localhost mysql-5.5.21]#groupadd mysql增加msyql组
root@localhost mysql-5.5.21]# useradd -g mysql mysql创建mysql用户加在mysql组下面[root@localhost mysql-5.5.21]# chown mysql.mysql -R /data/mysql/
安装mysql5.5.21
[root@localhost down]# tar zxvf mysql-5.5.21.tar.gz
[root@localhost down]#cd mysql-5.5.21
[root@localhost mysql-5.5.21]#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql\ -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock\ -DDEFAULT_CHARSET=utf8\ -DDEFAULT_COLLATION=utf8_general_ci\ -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk\ -DWITH_MYISAM_STORAGE_ENGINE=1\ -DWITH_INNOBASE_STORAGE_ENGINE=1\ -DWITH_MEMORY_STORAGE_ENGINE=1\ -DWITH_READLINE=1\ -DENABLED_LOCAL_INFILE=1\ -DMYSQL_DATADIR=/data/mysql\ -DMYSQL_USER=mysql\ -DMYSQL_TCP_PORT=3306上面的命令一次拷进命令行。- 处不要换行,其实就是一条语句,一次执行的!回车执行
然后执行make&& make install
这是有可能会出现:- Configuring incomplete, errors occurred!
这是因为缺少Curses包,解决办法:
remove CMakeCache.txtand rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev,
on Redhat and derivates it is ncurses-devel.很容易看懂,不解释了...
在CentOS下需要安装ncurses-devel
[root@localhostmysql-5.5.11]#rpm-ivhncurses-devel*
或者[root@localhostmysql-5.5.11]#yum
install -y ncurses-devel*
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_FEDERATED_STORAGE_ENGINE=1
-DWITH_PARTITION_STORAGE_ENGINE=1
//Unix socket file
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock
//数据库服务器TCP/IP连接的监听端口,默认为3306
-DMYSQL_TCP_PORT=3306
//Whether to enable LOCAL capability in the client library for LOAD DATA INFILE
//默认为关闭,这里开启
-DENABLED_LOCAL_INFILE=1
//数据库编码设置
-DEXTRA_CHARSETS=all
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8-general_ci
复制配置文件[root@mysql-5.5.21]# cp support-files/my-medium.cnf /etc/my.cnf
初始化数据库(执行前 需要chmod 755 scripts/mysql_install_db 赋给文件执行权限)[root@localhost mysql-5.5.21]#scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/注:#basedir mysql安装路径 datadir 数据库文件储存路径
设置mysqld的开机启动:[root@mysql-5.5.211]# cp support-files/mysql.server /etc/init.d/mysql[root@mysql-5.5.21]# chmod 755 /etc/init.d/mysqlchkconfig mysql on
启动mysql服务[root@localhost mysql-5.5.21]# /etc/init.d/mysql start //服务器端开关
如果启动有错误,查看/usr/local/mysql/data/xxx.err 错误日志 根据提示解决错误,多数是以为权限设置!目录设置!参数设置!引起的
我更改了(打开/etc/init.d/mysql) 中的红色标记路径才启动成功的,这个路径应该和我们安装mysql时参数里设置的路径保持一致,我不知道为什么安装完成后它还是默认的路径?
thenbasedir=/usr/local/mysqlbindir=/usr/local/mysql/binif test -z "$datadir"thendatadir=/data/mysql(这个路径应该和我们安装mysql时参数里设置的路径保持一致,不然会启动失败)fisbindir=/usr/local/mysql/binlibexecdir=/usr/local/mysql/binelsebindir="$basedir/bin"if test -z "$datadir"thendatadir="$basedir/data"fisbindir="$basedir/sbin"libexecdir="$basedir/libexec"启动完成之后用ps -ef |grep mysql 命令查看是否启动
设置root帐户的密码[root@localhost mysql-5.5.21]#mysqladmin -u root password 'yourpassword'删除本机匿名连接的空密码帐号本机登录mysql[root@localhost mysql-5.5.11]#mysql –u root -p然后输入上面设置的密码,登录后在mysql的命令行中执行:mysql>use mysql; //选择默认数据库mysqlmysql>update user set password=’root’ where user = '127.0.0.1';mysql>delete from user where password="";//不允许root密码为空mysql>flush privileges;mysql>quit
实现MySQL远程连接的实际操作流程
mysql 数据库端设置[root@localhost mysql-5.5.11]#/mysql –u root –p //进入数据库mysql>use mysqlmysql>select user,password,host from user;mysql>update user set host = '192.168.%' where user = '127.0.0.1';mysql>grant all privileges on *.* to identified by "root";//给以登录的远程连接赋予权限,能够连接数据库。远程无法连接的常见问题原因。并把远程登录用户的密码设置为rootmysql> flush privileges;
需要关闭掉selinux