mysql5.5.28进入管理_mysql5.5.28源码安装详解

一、系统环境

OS系统环境:RHEL release 6.1

Mysql版本:mysql-5.5.17.tar.gz

二、数据库安装

2.1新增mysql用户

[root@localhost ~]# groupadd mysql –g 502

[root@localhost ~]#  useradd

-g mysql mysql

系统环境配置:

[root@localhost ~]# yum install -y gcc gcc-c++ make

ncurses-devel bison cmake libaio libaio-devel

2.2编译安装

[root@localhost ~]# mkdir /data/mysql

[root@localhost ~]# mkdir /log/mysql -p

[root@localhost ~]#chown -R mysql:mysql /data/mysql

[root@localhost ~]# tar zxvf mysql-5.5.17.tar.gz

[root@localhost ~]# cd mysql-5.5.17

[root@localhost ~]# cmake . \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql

\ ===> 指定MySQL安装路径

-DMYSQL_DATADIR=/data/mysql

\ ===> mysql数据保存的路径

-DWITH_DEBUG=0

\ ===> 关闭debug模式

-DDEFAULT_CHARSET=utf8

\ ===> 默认服务器字符集

-DWITH_EXTRA_CHARSETS=all

\ ===> 额外的字符集

-DDEFAULT_COLLATION=utf8_general_ci \ ===>

服务器的排序规则。默认情况下,MySQL使用latin1_swedish_ci。使用SHOW

COLLATION语句来确定每个字符集的排序规则。

-DENABLED_LOCAL_INFILE=1 \ ===>

允许从本地导入数据,load命令需要用到

-DWITH_INNOBASE_STORAGE_ENGINE=1

\ ===>

打开innodb引擎

-DWITH_PARTITION_STORAGE_ENGINE=1

\ ===> 打开partition引擎

或者:

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_I*ILE=1 -DMYSQL_DATADIR=/data/mysql

-DMYSQL_USER=mysql

-DMYSQL_TCP_PORT=3306

[root@localhost ~]# make && make install

2.3创建MySQL授权表

[root@localhost ~]# cd /usr/local/mysql

[root@localhost ~]# chown -R root:mysql .

[root@localhost ~]# scripts/mysql_install_db

--user=mysql --datadir=/data/mysql

[root@localhost ~]# cp support-files/my-medium.cnf

/etc/my.cnf

2.4配置mysql

[root@localhost ~]# cp support-files/mysql.server

/etc/init.d/mysqld

[root@localhost ~]# chmod +x /etc/init.d/mysqld

[root@localhost ~]# chkconfig --add mysqld

[root@localhost ~]# chkconfig --level 2345 mysqld on

[root@localhost ~]# echo "export

PATH=$PATH:/usr/local/mysql/bin" >>/etc/profile

[root@localhost ~]# source /etc/profile

2.5修改配置文件(my.cnf )

[mysqld]

pid-file=/var/run/mysqld/mysqld.pid (可以不要)

max_connections=1000

log-error=/log/mysql/mysql

skip-name-resolve

2.6启动mysql服务器

[root@localhost ~]# /etc/init.d/mysqld start

修改mysql中root用户的密码

[root@localhost ~]# mysqladmin –u root password

‘123456’

登录mysql

#Mysql –uroot –p

#输入密码 (如果提示1045错误,说明密码输入错误)

如果忘记密码按照以下步骤重新设置密码

1、修改MySQL的登录设置:

# vi /etc/my.cnf

在[mysqld]的段中加上一句:skip-grant-tables

例如:

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

skip-name-resolve

skip-grant-tables  (加了这句语句不用密码都可以任意登录)

保存并且退出vi。

2.重新启动mysqld

# /etc/init.d/mysqld restart

Stopping MySQL: [ OK ]

Starting MySQL: [ OK ]

3.登录并修改MySQL的root密码

#mysql

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 3 to server version: 3.23.56

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql> USE mysql ;

Database changed

mysql> UPDATE user SET Password = password ( ‘new-password’ )

WHERE User = ‘root’ ;

Query OK, 0 rows affected (0.00 sec)

Rows matched: 2 Changed: 0 Warnings: 0

mysql> flush privileges ;

Query OK, 0 rows affected (0.01 sec)

mysql> quit

Bye

4.将MySQL的登录设置修改回来

# vi /etc/my.cnf

将刚才在[mysqld]的段中加上的skip-grant-tables删除

保存并且退出vi。

5.重新启动mysqld

# /etc/init.d/mysqld restart

Stopping MySQL: [ OK ]

Starting MySQL: [ OK ]

2.7查看mysql是否启用libaio

mysql> show variables like '%aio';

+---------------------------+----------+

|

Variable_name | Value  |

+----------------------------+----------+

| innodb_use_native_aio |

ON |

+----------------------------+----------+

2.8 删除不必要的账号和设置允许远程登录

#mysql

mysql> show databases;

mysql> use mysql;

mysql> select user,host,password from user;

mysql> delete from user where user=' ' and

host='host~sina4';

mysql> delete from user where user=' ' and

host='localhost';

mysql> delete from user where user='root' and host='::1';

mysql> delete from user where user='root' and

host='127.0.0.1';

mysql> select user,host,password from user;

mysql> flush privileges;

mysql> show databases;

mysql> use mysql;

mysql> select user,host,password from user;

mysql> grant all privileges on *.* to root@'%' identified by

'mima'; ##给所有用户登录

mysql> flush privileges;

mysql> show databases;

mysql> use mysql;

mysql> select host,user,password from user;

最后测试:mysql -h IP地址 -uroot –p

如果还登录不了,检查服务器iptables设置,需要开放3306端口

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL是一个真正的多用户、多线程SQL数据库服务器。SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言,它使得存储、更新和存取信息更加容易。MySQL是一个客户机/服务器结构的实现,它由一个服务器守护程序mysqld和许多不同的客户程序以及库组成的。 MySQL的主要目标是快速、健壮和易用。最初是因为MySQL的创始人需要这样的一个SQL服务器,它能处理与任何不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL因此就开发出来了。 它提供C,C++,Java(JDBC),Perl,Python,PHP and TCL 的API接口;多平台支持,包括Solaris,SunOS,BSDI,SGI IRIX,AIX,DEC UNIX,Linux,FreeBSD,SCO OpenServer,NetBSD,OpenBSD,HPUX,Win9x and NT;多样的数据类型,包括有/无符号1,2,3,4,8字节integers,FLOAT,DOUBLE,CHAR,VARCHAR,TEXT,BLOB,DATE,DATETIME,YEAR,SET,ENUM;非常灵活和安全的权限系统,密码加密;为Windows提供ODBC接口,可通过Access与之相联,另有第三方开发商提供多样的 ODBC驱动程序;在MySQL 3.23中使用新MyISAM最大的表大小可达8百万 TB(2^63个字节);多种语言支持,但不支持中文。 然而,为了实现快速、健壮和易用的目的,MySQL必须牺牲一部分灵活而强大的功能,如子查询、存储过程与触发器、外键、事物处理等。因而,MySQL在某些应用中缺乏灵活性,但这也使它对数据的处理速度较其它数据库服务器至少快2~3倍。 MySQL自身不支持Windows的图形界面,因此,所有的数据库操作及管理功能都只能在MS-DOS方式下完成。首先,必须登陆MySQL服务器,即在提示符/MySQL/BIN>下输入MYSQL –H host –U user –Ppassword,提示符改为mysql>时表示登陆成功。然后,选择所操作的数据库,即mysql> USE databasename。接着就可以用SQL语句进行查询了。如果需要退出数据库服务器,可执行QUIT命令,这样就成功退出服务器了。 当然,由于MySQL的知名度日益增加,许多第三方软件公司推出了MySQL在Windows环境中的具有图形界面的支持软件,如EMS公司的EMS MYSQL MANAGER就提供了Windows形式的MySQL数据库操作功能。 转帖于 Xue163.com_MySQL
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值