Linux下编译安装mysql-5.0.45
2013-06-26 14:35
381 查看
安装
rmp -ivh MySQL-server-4.1.22-0.glibc23.i386.rpm --nodeps
rmp -ivh MySQL-client-4.1.22-0.glibc23.i386.rpm --nodeps
查看是否安装成功
netstat -atln
命令看到3306端口开放说明安装成功
登录
mysql [-u username] [-h host] [-p[password]] [dbname]
初始无密码,这个mysql可执行文件在/usr/bin/mysql
目录
1、数据库目录
/var/lib/mysql/
2、配置文件
/usr/share/mysql
(mysql.server命令及配置文件)
3、相关命令
/usr/bin (mysqladmin mysqldump等命令)
4、启动脚本
/etc/rc.d/init.d/ (启动脚本文件mysql的目录)
修改登录密码
MySQL默认没有密码
usr/bin/mysqladmin -u root password 'new-password'
格式:
mysqladmin -u用户名 -p旧密码 password 新密码
启动与停止
MySQL安装完成后启动文件mysql在
/etc/init.d
目录下,在需要启动时运行下面命令即可
启动:
/etc/init.d/mysql start
停止:
/usr/bin/mysqladmin -u root -p shutdown
重新启动:
sudo /etc/init.d/mysql restart
自动启动:
察看mysql是否在自动启动列表中
/sbin/chkconfig --list
把MySQL添加到你系统的启动服务组里面去
/sbin/chkconfig --add mysql
把MySQL从启动服务组里面删除
/sbin/chkconfig --del mysql
配置
将/usr/share/mysql/my-medium.cnf复制到/etc/my.cnf,以后修改my.cnf文件来修改mysql的全局设置
将my.cnf文件中的innodb_flush_log_at_trx_commit设成0来优化
[mysqld]后添加添加lower_case_table_names设成1来不区分表名的大小写
设置字符集
MySQL的默认编码是Latin1,不支持中文,要支持需要把数据库的默认编码修改为gbk或者utf8。
1、中止MySQL服务(bin/mysqladmin -u root shutdown)
2、在/etc/下找到my.cnf,如果没有就把MySQL的安装目录下的support-files目录下的my-medium.cnf复制到/etc/下并改名为my.cnf即可
3、打开my.cnf以后,在[client]和[mysqld]下面均加上default-character-set=utf8,保存并关闭
4、启动MySQL服务(bin/mysqld_safe &)
查询字符集:show variables like '%set%';
增加MySQL用户
格式:
grant select on 数据库.* to 用户名@登录主机 identified by "密码"
grant select,insert,update,delete on *.* to user_1@'%' Identified by '123';
grant all on *.* to user_1@'localhost' Identified by '123';
远程访问
其一:
GRANT ALL PRIVILEGES ON *.* TO xoops_root@'%' IDENTIFIED BY '654321';
允许xoops_root用户可以从任意机器上登入MySQL。
其二:
编辑 /etc/mysql/my.cnf
>skip-networking => # skip-networking
这样就可以允许其他机器访问MySQL了。
grant all on *.* to 'root'@'ip' identified by 'password';
备份与恢复
备份
进入到库目录,cd /val/lib/mysql
mysqldump -u root -p --opt aaa > back_aaa
恢复
mysql -u root -p ccc < back_aaa
(7)登录mysql
(8)登录成功后,修改密码
进入>mysql环境下,
最后重启mysql,密码生效
使用root登陆到mysql后
mysql> update user set host='%' where user='root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
mysql> select host,user from user;
+-----------------------+------+
| host | user |
+-----------------------+------+
| % | root |
| 127.0.0.1 | root |
| 192.168.128.142 | root |
| ::1 | root |
| localhost.localdomain | root |
+-----------------------+------+
5 rows in set (0.00 sec)
然后:
mysql> grant all privileges on *.* to 'root'@'%' with grant option;
Query OK, 0 rows affected (0.08 sec)
mysql> exit
使用root登陆到mysql后
mysql> update user set host='%' where user='root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
mysql> select host,user from user;
+-----------------------+------+
| host | user |
+-----------------------+------+
| % | root |
| 127.0.0.1 | root |
| 192.168.128.142 | root |
| ::1 | root |
| localhost.localdomain | root |
+-----------------------+------+
5 rows in set (0.00 sec)
然后:
mysql> grant all privileges on *.* to 'root'@'%' with grant option;
Query OK, 0 rows affected (0.08 sec)
mysql> exit
/etc/init.d/mysql restart 重启生效
(呵)近一段时间由于工作需要,终于开始玩Linux了,今天搞了一天的MySQL编译安装,记录下来,备忘吧!!
(卡)安装环境:VmWare5(桥接模式) + RedHat E AS 4 + 已安装了开发工具以及相关开发包(安装Linux系统时自己要定制的),并测试成功
(!)先给出MySQL For Linux 源码下载地址,是xx.tar.zg格式的
http://www.filewatcher.com/m/mysql-5.0.45.tar.gz.24433261.0.0.html
(1)
-------------预备工作----------
1:假如下载的文件名为:mysql-5.0.45.tar.gz
2:假如copy到 /home下
3:groupadd mysql #添加mysql组
4:useradd -g mysql mysql #添加一个mysql用户
5:cd /home #进入到该目录
-----------------------编译过程-----------------------
6:tar zxvf mysql-5.0.45.tar.gz #解压后,在该目录下会出现一个同名的文件夹
7:cd /home/mysql-5.0.45
8:./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=latin1 #参数设置,可以先不明白,以后再修改配置
9:make
10:make install
11:cp support-files/my-medium.cnf /etc/my.cnf #如果/etc/my.cnf已存在,则先备份,再删除
12:vi /etc/my.cnf #将log-bin=mysql-bin注释掉
----------------------------安装并初步配置mysql--------------------------
13:cd /usr/local/mysql
14:bin/mysql_install_db --user=mysql #初始化mysql
15:chown -R root . #改当前目录的捅有者为root。注意,最后有个 . 啊,表示当前目录
16:chown -R mysql /usr/local/mysql/var #-R表示递归之下的所有目录
17:chgrp -R mysql /usr/local/mysql #改变目录所属为mysql
18:bin/mysqld_safe --user=mysql & #启动mysql
-----------------------------------------更改mysql的root用户密码----------------------------
19:bin/mysqladmin -uroot password 123456 #在mysql政党启动的情况下,更改root用户的登录密码
20:bin/mysql -uroot -p #输入此命令后,会提示你输入root用户密码123456,
21:show databases; #如果查出所有数据库,就恭喜你了
------------------------------------------------------把mysql加入到系统服务中-------------------------------------
22:cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld #加入到系统服务中,就可以通过service mysqld start|stop|status|restart等进行管理,很是方便,就不用再到/usr/local/mysql5.0.45/bin/启动mysql了
------------------------------------------------------------------配置mysql环境变量------------------------------------------------
23:cd /root #回到你的个人主目录,我这里是用root登陆的
cp .bashrc .bashrc.bak #备份一下吧
vi .bashrc
在最后加入:export PATH=/usr/local/mysql/bin:$PATH:.
source ~/.bashrc #回到终端再输入此命令,以使刚修改的起作用,~代表用户主目录
env #查看一下是否生效
24:此是用来替换23步的一种方法
cp /usr/local/mysql/bin/mysql /usr/bin/mysql #把mysql常用的工具目录加入到系统变量目录中去,自己选择性加,这样做主要是可以直接运行该工具,而不需要切换到该目录下,类似于添加环境变量了
-------------------------------------------------------------------------------让Linux开放3306端口-------------------------------------------
25:service iptables stop
vi /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
service iptables start
-------------------------------------------------------------------------------给root用户开启mysql远程访问权限--------------------------------------------
26:shutdown -hr now #重启
ps -e | grep mysql #查看mysql是否已随开机启动,或者输入:service mysqld status
mysql -uroot -p #进入mysql
输入root用户的密码
grant all on *.* to root@'%' identified by '123456';
#grant 权限 on 数据库名.表名 to 用户@登录主机 identified by "用户密码";
flush privileges; #为了开发方便,可以让root用户具有远程访问的权限
#最后,再附上一个很好用的mysql客户端,http://download.csdn.net/source/924456
(2)默认的mysql数据库目录是 /usr/local/mysql-5.0.45/var
我们在安装时指定了安装目录为/usr/local/mysql-5.0.45,除了在这里安装所要的文件外,还有一部分用户常用的,可执行二进制文件被放到了/usr/bin中,其实,在/usr/local/mysql-5.0.45/bin下,全都有这些命令了,之所以要在/usr/bin中把那几个命令考过来,就是为了方便,相当于设置环境变量了,你可以echo
$PATH一下,里面一定有/usr/bin这个值的。
明白了安装过程,删除mysql也就不足为难了
rmp -ivh MySQL-server-4.1.22-0.glibc23.i386.rpm --nodeps
rmp -ivh MySQL-client-4.1.22-0.glibc23.i386.rpm --nodeps
查看是否安装成功
netstat -atln
命令看到3306端口开放说明安装成功
登录
mysql [-u username] [-h host] [-p[password]] [dbname]
初始无密码,这个mysql可执行文件在/usr/bin/mysql
目录
1、数据库目录
/var/lib/mysql/
2、配置文件
/usr/share/mysql
(mysql.server命令及配置文件)
3、相关命令
/usr/bin (mysqladmin mysqldump等命令)
4、启动脚本
/etc/rc.d/init.d/ (启动脚本文件mysql的目录)
修改登录密码
MySQL默认没有密码
usr/bin/mysqladmin -u root password 'new-password'
格式:
mysqladmin -u用户名 -p旧密码 password 新密码
启动与停止
MySQL安装完成后启动文件mysql在
/etc/init.d
目录下,在需要启动时运行下面命令即可
启动:
/etc/init.d/mysql start
停止:
/usr/bin/mysqladmin -u root -p shutdown
重新启动:
sudo /etc/init.d/mysql restart
自动启动:
察看mysql是否在自动启动列表中
/sbin/chkconfig --list
把MySQL添加到你系统的启动服务组里面去
/sbin/chkconfig --add mysql
把MySQL从启动服务组里面删除
/sbin/chkconfig --del mysql
配置
将/usr/share/mysql/my-medium.cnf复制到/etc/my.cnf,以后修改my.cnf文件来修改mysql的全局设置
将my.cnf文件中的innodb_flush_log_at_trx_commit设成0来优化
[mysqld]后添加添加lower_case_table_names设成1来不区分表名的大小写
设置字符集
MySQL的默认编码是Latin1,不支持中文,要支持需要把数据库的默认编码修改为gbk或者utf8。
1、中止MySQL服务(bin/mysqladmin -u root shutdown)
2、在/etc/下找到my.cnf,如果没有就把MySQL的安装目录下的support-files目录下的my-medium.cnf复制到/etc/下并改名为my.cnf即可
3、打开my.cnf以后,在[client]和[mysqld]下面均加上default-character-set=utf8,保存并关闭
4、启动MySQL服务(bin/mysqld_safe &)
查询字符集:show variables like '%set%';
增加MySQL用户
格式:
grant select on 数据库.* to 用户名@登录主机 identified by "密码"
grant select,insert,update,delete on *.* to user_1@'%' Identified by '123';
grant all on *.* to user_1@'localhost' Identified by '123';
远程访问
其一:
GRANT ALL PRIVILEGES ON *.* TO xoops_root@'%' IDENTIFIED BY '654321';
允许xoops_root用户可以从任意机器上登入MySQL。
其二:
编辑 /etc/mysql/my.cnf
>skip-networking => # skip-networking
这样就可以允许其他机器访问MySQL了。
grant all on *.* to 'root'@'ip' identified by 'password';
备份与恢复
备份
进入到库目录,cd /val/lib/mysql
mysqldump -u root -p --opt aaa > back_aaa
恢复
mysql -u root -p ccc < back_aaa
(7)登录mysql
#cd /usr/bin/mysql -u root -p Enterpassword:(直接回车,因为第一次为空密码) |
进入>mysql环境下,
输入: > mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.00 sec) > mysql> use mysql Database changed mysql> show tables; +---------------------------+ | Tables_in_mysql | +---------------------------+ | columns_priv | | db | | event | | func | | general_log | | help_category | | help_keyword | | help_relation | | help_topic | | host | | ndb_binlog_index | | plugin | | proc | | procs_priv | | proxies_priv | | servers | | slow_log | | tables_priv | | time_zone | | time_zone_leap_second | | time_zone_name | | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+ 24 rows in set (0.00 sec) > mysql>update user set password=password('123456')where user='root'; 修改root密码为123456 |
使用root登陆到mysql后
mysql> update user set host='%' where user='root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
mysql> select host,user from user;
+-----------------------+------+
| host | user |
+-----------------------+------+
| % | root |
| 127.0.0.1 | root |
| 192.168.128.142 | root |
| ::1 | root |
| localhost.localdomain | root |
+-----------------------+------+
5 rows in set (0.00 sec)
然后:
mysql> grant all privileges on *.* to 'root'@'%' with grant option;
Query OK, 0 rows affected (0.08 sec)
mysql> exit
使用root登陆到mysql后
mysql> update user set host='%' where user='root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
mysql> select host,user from user;
+-----------------------+------+
| host | user |
+-----------------------+------+
| % | root |
| 127.0.0.1 | root |
| 192.168.128.142 | root |
| ::1 | root |
| localhost.localdomain | root |
+-----------------------+------+
5 rows in set (0.00 sec)
然后:
mysql> grant all privileges on *.* to 'root'@'%' with grant option;
Query OK, 0 rows affected (0.08 sec)
mysql> exit
/etc/init.d/mysql restart 重启生效
(呵)近一段时间由于工作需要,终于开始玩Linux了,今天搞了一天的MySQL编译安装,记录下来,备忘吧!!
(卡)安装环境:VmWare5(桥接模式) + RedHat E AS 4 + 已安装了开发工具以及相关开发包(安装Linux系统时自己要定制的),并测试成功
(!)先给出MySQL For Linux 源码下载地址,是xx.tar.zg格式的
http://www.filewatcher.com/m/mysql-5.0.45.tar.gz.24433261.0.0.html
(1)
-------------预备工作----------
1:假如下载的文件名为:mysql-5.0.45.tar.gz
2:假如copy到 /home下
3:groupadd mysql #添加mysql组
4:useradd -g mysql mysql #添加一个mysql用户
5:cd /home #进入到该目录
-----------------------编译过程-----------------------
6:tar zxvf mysql-5.0.45.tar.gz #解压后,在该目录下会出现一个同名的文件夹
7:cd /home/mysql-5.0.45
8:./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=latin1 #参数设置,可以先不明白,以后再修改配置
9:make
10:make install
11:cp support-files/my-medium.cnf /etc/my.cnf #如果/etc/my.cnf已存在,则先备份,再删除
12:vi /etc/my.cnf #将log-bin=mysql-bin注释掉
----------------------------安装并初步配置mysql--------------------------
13:cd /usr/local/mysql
14:bin/mysql_install_db --user=mysql #初始化mysql
15:chown -R root . #改当前目录的捅有者为root。注意,最后有个 . 啊,表示当前目录
16:chown -R mysql /usr/local/mysql/var #-R表示递归之下的所有目录
17:chgrp -R mysql /usr/local/mysql #改变目录所属为mysql
18:bin/mysqld_safe --user=mysql & #启动mysql
-----------------------------------------更改mysql的root用户密码----------------------------
19:bin/mysqladmin -uroot password 123456 #在mysql政党启动的情况下,更改root用户的登录密码
20:bin/mysql -uroot -p #输入此命令后,会提示你输入root用户密码123456,
21:show databases; #如果查出所有数据库,就恭喜你了
------------------------------------------------------把mysql加入到系统服务中-------------------------------------
22:cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld #加入到系统服务中,就可以通过service mysqld start|stop|status|restart等进行管理,很是方便,就不用再到/usr/local/mysql5.0.45/bin/启动mysql了
------------------------------------------------------------------配置mysql环境变量------------------------------------------------
23:cd /root #回到你的个人主目录,我这里是用root登陆的
cp .bashrc .bashrc.bak #备份一下吧
vi .bashrc
在最后加入:export PATH=/usr/local/mysql/bin:$PATH:.
source ~/.bashrc #回到终端再输入此命令,以使刚修改的起作用,~代表用户主目录
env #查看一下是否生效
24:此是用来替换23步的一种方法
cp /usr/local/mysql/bin/mysql /usr/bin/mysql #把mysql常用的工具目录加入到系统变量目录中去,自己选择性加,这样做主要是可以直接运行该工具,而不需要切换到该目录下,类似于添加环境变量了
-------------------------------------------------------------------------------让Linux开放3306端口-------------------------------------------
25:service iptables stop
vi /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
service iptables start
-------------------------------------------------------------------------------给root用户开启mysql远程访问权限--------------------------------------------
26:shutdown -hr now #重启
ps -e | grep mysql #查看mysql是否已随开机启动,或者输入:service mysqld status
mysql -uroot -p #进入mysql
输入root用户的密码
grant all on *.* to root@'%' identified by '123456';
#grant 权限 on 数据库名.表名 to 用户@登录主机 identified by "用户密码";
flush privileges; #为了开发方便,可以让root用户具有远程访问的权限
#最后,再附上一个很好用的mysql客户端,http://download.csdn.net/source/924456
(2)默认的mysql数据库目录是 /usr/local/mysql-5.0.45/var
我们在安装时指定了安装目录为/usr/local/mysql-5.0.45,除了在这里安装所要的文件外,还有一部分用户常用的,可执行二进制文件被放到了/usr/bin中,其实,在/usr/local/mysql-5.0.45/bin下,全都有这些命令了,之所以要在/usr/bin中把那几个命令考过来,就是为了方便,相当于设置环境变量了,你可以echo
$PATH一下,里面一定有/usr/bin这个值的。
明白了安装过程,删除mysql也就不足为难了
相关文章推荐
- Linux 环境编译安装MySQL 5.0.45
- Linux 下 MySQL 5.5.8 源码编译安装记录
- Linux下编译安装Mysql 5.5的简单步骤
- Linux 编译安装 MYSQL 5.1 与 Innodb
- lnmp源码编译安装Linux(6.4)+Nginx(1.4.1)+Mysql(5.6.12)+Php(5.5.0)
- Linux下源代码编译Mysql5.5版本安装详细步骤及编译参数
- DayDayUP_Linux运维学习_MySQL 5.6.27 源码编译安装
- 源码编译安装,搭建LNMP环境(Linux+Nginx+MySQL+PHP)
- linux 编译安装 mysql 5.5.8
- linux下使用官方编译好的二进制包安装mysql
- linux 下mysql 编译安装 指定安装目录
- Linux下编译安装MySQL问题
- 在Linux中编译安装两个MySQL
- Linux下MySQL 5.5.11编译安装笔记(完整安装教程)
- Linux从入门到精通之源码编译安装 MySQL
- linux下的mysql安装(64位无需编译版)
- Linux Apache+php+Mysql+cacti 编译安装
- linux 下编译安装mysql
- linux mysql 5.7.17 编译安装小记