linux mysql

1、创建用户mysql 。 # useradd mysql
2、下载文件到目录 /usr/local.
3、进入目录 /usr/local 解压文件mysql-standard-5.0.18-linux-i686-glibc23.tar.gz。
# tar zxvf mysql-standard-5.0.18-linux-i686-glibc23.tar.gz .
4、创建连接文件 # ln -s mysql-standard-5.0.18-linux-i686-glibc23 mysql
5、切换目录 # cd mysql
6、初始化数据库 # scripts/mysql_install_db --user=mysql
7、更改目录属组和权限 # chown -R root . ; chown -R mysql data ; chgrp -R mysql .
8、启动数据库 # bin/mysqld_safe --user=mysql & 用客户端连接测试一下
9、加在 /etc/rc.local 让 mysql自动启动。

 

 

 

由于 Linux 存在各种优越性,如速度和稳定性就比 windows 强很多,所以选择 Linux 系统做为服务器的用户越来越多,下面简单介绍一下 Linux 下 MySQL 无法启动的检测方法供大家参考。

1、可以使用下面的命令检查 MySQL 是否启动

ps -auxwww|grep mysql 
2、MySQL 无法启动可以这么检查

检查 MySQL 配置文件,看一下配置文件中 datadir、basedir 参数是否存在,路径是否正确,运行 MySQL 的用户是否对它们有访问权限。

这是 MySQL 运行必须的两个参数,如果这两个参数没有问题的话,检查其他参数是否有问题。
 ⊕本文来自: 360安全网(www.hack59.com) 详细出处参考:http://www.hack59.com/edu/shujuku/MySQL/2009093016531471.html

 

 

 

 

1....................

最近有个项目要部署到linux上,在网上查了些资料,记下点遇到的问题,以便将来再用。

一:jdk安装

1.通过chmod a+x jdk-1_5_x-rc-linux-i586-rpm.bin命令使其获得可执行权限
2.通过 rpm –ivh jdk-1_5_x-rc-linux-i586-rpm.bin来进行安装
3.安装完毕,JDK安装在/usr/java/目录下
4.设置环境变量(写入vi/etc/profile中)

用i进入插入模式
export JAVA_HOME = /usr/java/jdk1.5
export PATH = $JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:/usr/java/jdk1.5/lib:/usr/java/jdk1.5/jre/lib:$CLASSPATH

esc退出,按下大写ZZ 保存退出!

java -version 发现没有成功,于是加入下面的步骤:

5. 要使JDK在所有的用户中使用,可以这样:
vi /etc/profile.d/java.sh

在新的java.sh中输入以下内容: 
JAVA_HOME=/usr/java/jdk1.5.0
CLASSPATH=.:$JAVA_HOME/lib/tools.jar:/lib/dt.jar
PATH=$JAVA_HOME/bin:$PATH
JAVA_OPTS="-server -Xmx768m -XX:MaxNewSize=512m -XX:MaxPermSize=700m"
CATALINA_OPTS="-server -Xmx768m -XX:MaxNewSize=512m -XX:MaxPermSize=700m"
export JAVA_HOME CLASSPATH PATH JAVA_OPTS CATALINA_OPTS
保存退出,然后给java.sh分配权限:chmod 755 /etc/profile.d/java.sh

6.这一步很关键,困扰了我一天,AS4默认的是jdk1.4.2 ,当我们安装上jdk1.5.0的时候如果不做新的链接jdk的使用是会出问题的,具体做法如下:

进入 /usr/bin/目录

cd /usr/bin

 ln -s -f /usr/java/jdk1.5/jre/bin/java

 ln -s -f /usr/java/jdk1.5/bin/javac

reboot重起linux机器。

二:tomcat安装

1. #tar -zxvf apache_tomcat_5.523.tar.gz

 #mv apache_tomcat_5.52.3 tomcat
 OK  进入TOMCAT 目录 然后进入 BIN 目录
 运行 ./startup.sh

2. 然后简单配置一下TOMCAT 的用户和角色
进入 当前的目录 下的CONF
vi tomcat-users.xml
在<tomcat-users>
加入
<user name="admin" password="admin" roles="admin" />

3.配置sever.xml

<Context path="" reloadable="true" docBase="D:/web/test"></Context>

4. 开机自启动
# vi /etc/rc.d/rc.local 添加:
export JAVA_HOME=/usr/java/jdk1.5
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar
/usr/apache_tomcat_5.52.3/bin/startup.sh

三:mysql安装

1.安装

# rpm -ivh MySQL-server-5.1.11-0.i386.rpm
# rpm -ivh MySQL-client-5.1.11-0.i386.rpm
# rm -f MySQL-server-5.1.11-0.i386.rpm
# rm -f MySQL-client-5.1.11-0.i386.rpm

2. 修改口令
# mysqladmin -u root passord newpassword

3.启动与关闭
启动 # /etc/init.d/mysql start(service mysqld restart)
关闭 # /etc/init.d/mysql stop
4.开机自启动
查看启动列表 # /sbin/chkconfig --list
添加启动项 # /sbin/chkconfig --add mysql
删除启动项 # /sbin/chkconfig --del mysql
5.中文问题
# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
[client]下添加:
default-character-set=gbk
[mysqld]下添加:
default-character-set=gbk

init_connect='SET NAMES utf8' (设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)

问题:安装启动不了

1. 这是没启动mysql的守护进程,执行service mysql start就行了(不成功)

出现Starting MySQL.Manager of pid-file quit without updating fi[FAILED]的报错
打开/etc/selinux/config把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器后问题就得以解决。(我解决问题)

 

MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步:

 

1、home目录下建立data目录
cd /home
mkdir data

2、把MySQL服务进程停掉:
mysqladmin -u root -p shutdown

3、把/var/lib/mysql整个目录移到/home/data
mv /var/lib/mysql /home/data/
这样就把MySQL的数据文件移动到了/home/data/mysql下

4、找到my.cnf配置文件
如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:
[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

5、编辑MySQL的配置文件/etc/my.cnf
为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。 修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.sock 。操作如下:
vi my.cnf (用vi工具编辑my.cnf文件,找到下列数据修改之)
# The MySQL server
[mysqld]
port = 3306
#socket = /var/l

 

 

 

2..........................

 

ib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)
socket = /home/data/mysql/mysql.sock (加上此行)

6、修改MySQL启动脚本/etc/rc.d/init.d/mysql
最后,需要修改MySQL启动脚本/etc/rc.d/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。
[root@test1 etc]# vi /etc/rc.d/init.d/mysql
#datadir=/var/lib/mysql (注释此行)
datadir=/home/data/mysql (加上此行)

 

grant select,insert,update,delete,create,drop,alter on *.* to test @"% " Identified by "123";

 

 

1、数据库目录
/var/lib/mysql/

2、配置文件
/usr/share/mysql(mysql.server命令及配置文件)

3、相关命令
/usr/bin(mysqladmin mysqldump等命令)

4、启动脚本
/etc/rc.d/init.d/(启动脚本文件mysql的目录)

 卸载mysql
  rpm -qa|grep -i mysql
  rpm -ev MySQL-server-4.0.14-0 MySQL-client-4.0.14-0
  卸载后/var/lib/mysql中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除
  rm -f /etc/my.cnf
  rm -rf /var/lib/mysql

 

   如将日志文件写在/var/log目录中,可以在my.cnf文件中加入下面两行:
  [mysqld_safe]
  err-log = /var/log/mysqld.log

 备份与恢复

1、备份

例如:将上例创建的aaa库备份到文件back_aaa中

[root@test1 root]# cd /home/data/mysql (进入到库目录,本例库已由val/lib/mysql转到/home/data/mysql
[root@test1 mysql]# mysqldump -u root -p --opt a > back_a

2、恢复

[root@test mysql]# mysql -u root -p c < back

详细出处参考:http://www.itqun.net/content-detail/233012_2.html

 

 

 

 

 

 

关键词:Linux

    折腾了好几天,终于搞定,今天我把自己亲自调试的记录整理一下,便于自己以后参考,大家看了后也少走些弯路。

归纳起来,安装过程大致分为以下七个步骤: 

   一、卸载系统默认安装的jdk1.4.2包(可选部分)
   二、安装配置jdk1.6 
   三、设置环境变量 
   四、安装、配置、测试tomcat  
   五、配置虚拟主机,调整8080端口为80端口,部署各个网站内容(读者根据自己的情况此步骤可略)
   六、安装mysql数据库,导出、导入原来数据 
   七、联合测试


* 硬件、软件环境版本说明:

   hard ware:ibm pc兼容机 
   linux :RedHat 9.0
   jdk   :jdk1.6.0
   tomcat:tomcat-6.0.10
   mysql :mysql4.1.12 (RedHat 9.0自带包)


* 所需要的软件:                             下载地址

   jdk: jdk-6-linux-i586-rpm.bin             https://java.sun.com/javase/downloads/index.jsp

   tomcat: apache-tomcat-6.0.10.tar.gz       http://www.apache.org

   jdbc:mysql-connector-java-3.1.14-bin.jar  http://www.mysql.org/downloads/

   牢记:这些软件全部在/usr/local/download留个备份,便于今后方便使用 

* 安装目录设定:   

   jdk安装路径:  /usr/java/jdk1.6.0

   tomcat安装路径:/usr/local/tomcat6.0 

   mysql不用安装,因为redhat9.0 自带mysql ,其Server version:4.1.12,但是安装时候要自定义安装,确保选择上mysql包。
   
   mysql jdbc 路径:/usr/local/lib ,在环境变量CLASSPATH加 mysql-connector-java-3.1.14-bin.jar 这个驱动,否则会出现错误    

   java.sql.SQLException: Got error 28 from storage engine


一、卸载系统默认安装的jdk1.4.2包

    若是自定义全部安装,则需要先卸载java-1.4.2-gcj-compat 系统默认安装的包

   #java -version                            //查看jdk版本,会显示 java version 1.4.2

   #rpm -q java-1.4.2                        //查看完整的包名

   #rpm -e java-1.4.2-gcj-compat             //卸载系统默认安装的jdk1.4.2包 

二、 安装配置jdk1.6 

   # ll  jdk-6-linux-i586-rpm.bin             //查看包的属性,是否有执行的权限,命令是字符L的小写

   #chmod 777 jdk-6-linux-i586-rpm.bin        //设置包的属性为可执行

   #./jdk-6-linux-i586-rpm.bin                //查看协议并解压rpm包(不断的按回车键,然后键入yes,自动安装

   #rpm -ivh jdk-6-linux-i586-rpm.bin         //进行安装,提示already installed,此步骤可略

   #java -version                             //测试,提示java version "1.6.0" ,说明已经安装好了

   #cd /usr/java/jdk1.6.0                     //进入默认安装好的目录,确认

三、设置环境变量: 

   备份/etc/profile文件为/etc/profile.pre ,在文件末把下面内容写到/etc/profile中, 启动时会自动加载jdk,

   vi /etc/profile  打开文件/etc/profile, 在文件末将 JAVA_HOME 等语句写入,详细参考附件profile

   JAVA_HOME=/usr/java/jdk1.6.0
   .....

   CATALINA_HOME=/usr/local/tomcat6.0

   export JAVA_HOME
   export JAVA_BIN
   export JRE_HOME
   export PATH
   export CLASSPATH
   export CATALINA_HOME


四、安装、配置、测试tomcat  

   #cd /usr/local/                              //事先把apache-tomcat-6.0.10.tar.gz放到该目录下

   #tar zxvf apache-tomcat-6.0.10.tar.gz        //解包 

   #ln -s apache-tomcat-6.0.10  tomcat6.0       //做apache-tomcat-6.0.10快捷方式 

   启动Tomcat:

   # cd /usr/local/tomcat6.0/bin

   #sh startup.sh 


   关闭Tomcat:

   #sh shutdown.sh
  

   若看到以下信息,则说明Tomcat6.0配置好了,另外也可以用http://localhost:8080测试

   [root@linuxserver bin]# sh startup.sh
   Using CATALINA_BASE:   /usr/local/tomcat6.0
   Using CATALINA_HOME:   /usr/local/tomcat6.0
   Using CATALINA_TMPDIR: /usr/local/tomcat6.0/temp
   Using JRE_HOME:        /usr/java/jdk1.6.0/jre


五、配置虚拟主机,调整8080端口为80端口,部署各个网站内容(读者根据自己的情况此步骤可略)

   * 在tomcat根目录下创建vhost文件夹,然后创建分别www.qfmy.tyut.edu.cn ;www.texsx.com;www.talented.com.cn文件夹,命令如下



   #mkdir vhost
   #cd vhost
   #mkdir www.qfmy.tyut.edu.cn
   #mkdir www.texsx.com
   #mkdir www.talented.com.cn

   * 修改一个/usr/local/tomcat6.0/conf目录下的server.xml文件,

     将port=8080改为80,并添加 host项配置虚拟主机,有关虚拟主机的配置我在博客中已经介绍过,详见tomcat下设置虚拟主机 http://www.talented.com.cn/archives/2006/10/10_8_14.html,本篇文章只提供server.xml 附件供参考。

    按照配置的目录拷贝网站文件,为测试方便,可以先编写个test.htm测试,若通过则准备下一步的调试动态部分,调试mysql数据库,导入原来网站的数据。


六、 安装mysql,导出、导入原来数据 

    *安装问题:
   
     在此我不用多谈,采用redhat9系统自带的mysql4.1版本,自定义安装选择mysql就完成安装!

  *备份原来数据库:

         说明:根据自己的情况更换下面

               yourusername 数据库用户名,
               yourpassword 密码,
               yourdatabase_name 数据库名,
               yourdb.backup 备份的文件名(假设备份到d盘下) 
               192.168.1.40  数据库主机地址 
               yourdbbackupdir 数据库备份存放目录
               yourdb.backup   数据库备份文件
 
  mysqldump -uyourusername -pyourpassword yourdatabase_name>;d:/yourdb.backup 

    *恢复数据库:
     
        说明:删除原有数据库,建立新数据库并指定gbk编码,把备份数据库导入。


    # mysqladmin -uroot  password yourpassword  //给root用户添加密码yourpassword
    # mysql -uroot -pyourpassword  -h 192.168.1.40  //连接数据库,主机地址 
    mysql> grant select,insert,delete,update on *.* to root@&apos;%&apos; identified by &apos;yourpassword&apos;; //授权访问的主机 
    mysql>create database yourdatabase_name  character set gbk;  //创建数据库yourdatabase_name

    #cd /yourdbbackupdir/

    #mysql -uroot -pmysql yourdatabase_name <yourdb.backup

七、联合测试

    关于乱码问题我在博客中已经作了介绍:

    linux平台上jsp的乱码问题 http://www.talented.com.cn/archives/2007/3/27_111.html

    mysql乱码处理总结 http://www.talented.com.cn/archives/2006/10/27_27.html

    好了,今天就谈到这儿,我非常气愤网上随意乱贴技术性的贴字,自己没测试就别往上放!否则非常容易误导读者啊!我自己今后也以身作则,自己没测试通过的绝对不上传!

 

在linux下安装mysql

一.下载mysql-5.1.45.tar.gz
http://dev.mysql.com/downloads
或其它地方下载

二.添加mysql用户及mysql用户组,并把mysql用户放到mysql用户组中
useradd mysql
等与用下面两条命令:
groupadd mysql
useradd -g mysql mysql

三.上传到/usr/local/src下(方便管理)解压安装
[root@localhost src]# tar -zxvf mysql-5.1.45.tar.gz
[root@localhost src]# cd mysql-5.1.45

1.编译
[root@localhost mysql-5.1.45]# ./configure --prefix=/usr/local/mysql --with-charset=gbk --with-collation=gbk_chinese_ci --with-extra-charsets=all --with-named-curses-libs=/usr/lib/libncurses.so.5
2.安装
[root@localhost mysql-5.1.45]# make && make install (这个时间比较长)

3.将mysql加入到系统变量path中
将/usr/local/mysql/bin 加入到path中,这样在shell里就可以运行mysql相关的命令。
[root@localhost mysql-5.1.45]# vi /etc/profile
加入
export MYSQL_HOME=/usr/local/mysql
export PATH=$MYSQL_HOME/bin:$PATH

如果同时安装tomcat可以采用下面的方式
export TOMCAT_HOME=/home/coomix/apache-tomcat-5.5.27
export MYSQL_HOME=/usr/local/mysql
export PATH=$MYSQL_HOME/bin:TOMCAT_HOME/bin:$PATH

[root@localhost mysql-5.1.45]# source /etc/profile 使配置文件立即生效

4.进入到mysql文件夹下,初始化mysql表格,安装 mysql 默认数据库
[root@localhost mysql-5.1.45]# cd /usr/local/mysql/
[root@localhost mysql]# ls
bin docs include lib libexec mysql-test share sql-bench
[root@localhost mysql]# mysql_install_db --user=mysql

5.修改目录权限
[root@localhost mysql]# chown -R root:mysql .
[root@localhost mysql]# chown -R mysql var
[root@localhost mysql]# chgrp -R mysql .

6.修改配置,将mysql加入系统服务:
[root@localhost mysql]# cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
[root@localhost mysql]# cp /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysqld
[root@localhost mysql]# chkconfig --add mysqld

 

7.启动mysql
[root@localhost mysql]# service mysqld
Usage: /etc/init.d/mysqld {start|stop|restart|reload|force-reload|status} [ MySQL server options ]
[root@localhost mysql]# service mysqld start
Starting MySQL.                                            [确定]
[root@localhost mysql]#

8.使用mysql,默认root用户是没有密码的
[root@localhost mysql]# cd bin
[root@localhost bin]# ./mysql -u root -p
Enter password: 直接按回车
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 2
Server version: 5.1.45-log Source distribution

Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.

9.修改root密码
[root@localhost bin]# mysqladmin -u root password 'root'
[root@localhost bin]# mysqladmin -u root -h host_name password 'root'
mysqladmin: connect to server at 'host_name' failed
error: 'Unknown MySQL server host 'host_name' (1)'
Check that mysqld is running on host_name and that the port is 3306.
You can check this by doing 'telnet host_name 3306'
[root@localhost bin]# ./mysql -u root -p
Enter password: 输入root
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| test               |
+--------------------+
3 rows in set (0.01 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                |
| servers                   |
| slow_log                  |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+
23 rows in set (0.00 sec)

mysql> quit
Bye
[root@localhost bin]#


附:[root@localhost mysql]# mysql_install_db --user=mysql执行后的显示:
Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/usr/local/mysql/bin/mysqladmin -u root password 'new-password'
/usr/local/mysql/bin/mysqladmin -u root -h localhost.localdomain password 'new-password'

Alternatively you can run:
/usr/local/mysql/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr/local/mysql ; /usr/local/mysql/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd /usr/local/mysql/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /usr/local/mysql/bin/mysqlbug script!

 

 

 

 

想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的MySQL。本以为有Windows下使用SQL Server的经验,觉得在Linux下安装MySql应该是易如反掌的事,可在真正安装和使用MySQL时走了很多弯路,遇见很多问题,毕竟Linux 和Windows本身就有很大区别。为了让和我一样的初学者在学习的过程中少走弯路,尽快入门,写了此文,希望对您有所帮助。

二、安装Mysql

   1、下载MySQL的安装文件
   安装MySQL需要下面两个文件:
   MySQL-server-5.0.9-0.i386.rpm   
   MySQL-client-5.0.9-0.i386.rpm
   下载地址为: http://dev.mysql.com/downloads/mysql/5.0.html,打开此网页,下拉网页找到“Linux x86 RPM downloads”项,找到“Server”和“Client programs”项,下载需要的上述两个rpm文件。

   2、安装MySQL
   rpm文件是Red Hat公司开发的软件安装包,rpm可让Linux在安装软件包时免除许多复杂的手续。该命令在安装时常用的参数是 –ivh ,其中i表示将安装指定的rmp软件包,V表示安装时的详细信息,h表示在安装期间出现“#”符号来显示目前的安装过程。这个符号将持续到安装完成后才停止。
   1)安装服务器端
   在有两个rmp文件的目录下运行如下命令:
   [root@test1 local]# rpm -ivh MySQL-server-5.0.9-0.i386.rpm
   显示如下信息。
    warning: MySQL-server-5.0.9-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5
   Preparing...       ########################################### [100%]
   1:MySQL-server     ########################################### [100%]
    。。。。。。(省略显示)
   /usr/bin/mysqladmin -u root password 'new-password'
   /usr/bin/mysqladmin -u root -h test1 password 'new-password'
    。。。。。。(省略显示)
   Starting mysqld daemon with databases from /var/lib/mysql
   如出现如上信息,服务端安装完毕。测试是否成功可运行netstat看Mysql端口是否打开,如打开表示服务已经启动,安装成功。Mysql默认的端口是3306。
   [root@test1 local]# netstat -nat
   Active Internet connections (servers and established)
   Proto Recv-Q Send-Q Local Address      Foreign Address     State   
   tcp  0  0 0.0.0.0:3306     0.0.0.0:*      LISTEN   
   上面显示可以看出MySQL服务已经启动。
   2)安装客户端
   运行如下命令:
   [root@test1 local]# rpm -ivh MySQL-client-5.0.9-0.i386.rpm
   warning: MySQL-client-5.0.9-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5
   Preparing...    ########################################### [100%]
   1:MySQL-client  ########################################### [100%]
   显示安装完毕。
   用下面的命令连接mysql,测试是否成功。
  三、登录MySQL

   登录MySQL的命令是mysql, mysql 的使用语法如下:
   mysql [-u username] [-h host] [-p[password]] [dbname]
   username 与 password 分别是 MySQL 的用户名与密码,mysql的初始管理帐号是root,没有密码,注意:这个root用户不是Linux的系统用户。MySQL默认用户是root,由于初始没有密码,第一次进时只需键入mysql即可。
   [root@test1 local]# mysql
   Welcome to the MySQL monitor. Commands end with ; or /g.
   Your MySQL connection id is 1 to server version: 4.0.16-standard
   Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
   mysql>
   出现了“mysql>”提示符,恭喜你,安装成功!
   增加了密码后的登录格式如下:
   mysql -u root -p
   Enter password: (输入密码)
   其中-u后跟的是用户名,-p要求输入密码,回车后在输入密码处输入密码。

   注意:这个mysql文件在/usr/bin目录下,与后面讲的启动文件/etc/init.d/mysql不是一个文件。

   四、MySQL的几个重要目录

   MySQL安装完成后不象SQL Server默认安装在一个目录,它的数据库文 ⑴渲梦募 兔 钗募 直鹪诓煌 哪柯迹 私庹庑┠柯挤浅V匾 绕涠杂贚inux的初学者,因为 Linux本身的目录结构就比较复杂,如果搞不清楚MySQL的安装目录那就无从谈起深入学习。

   下面就介绍一下这几个目录。

   1、数据库目录
   /var/lib/mysql/

   2、配置文件
   /usr/share/mysql(mysql.server命令及配置文件)

   3、相关命令
   /usr/bin(mysqladmin mysqldump等命令)

   4、启动脚本
   /etc/rc.d/init.d/(启动脚本文件mysql的目录)
  五、修改登录密码

   MySQL默认没有密码,安装完毕增加密码的重要性是不言而喻的。

   1、命令
   usr/bin/mysqladmin -u root password 'new-password'
   格式:mysqladmin -u用户名 -p旧密码 password 新密码

   2、例子
   例1:给root加个密码123456。
   键入以下命令 :
   [root@test1 local]# /usr/bin/mysqladmin -u root password 123456
   注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。

   3、测试是否修改成功
   1)不用密码登录
   [root@test1 local]# mysql
   ERROR 1045: Access denied for user: 'root@localhost' (Using password: NO)
   显示错误,说明密码已经修改。
   2)用修改后的密码登录
   [root@test1 local]# mysql -u root -p
   Enter password: (输入修改后的密码123456)
   Welcome to the MySQL monitor. Commands end with ; or /g.
   Your MySQL connection id is 4 to server version: 4.0.16-standard
   Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
   mysql>
   成功!
   这是通过mysqladmin命令修改口令,也可通过修改库来更改口令。

   六、启动与停止

   1、启动
   MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令即可。
   [root@test1 init.d]# /etc/init.d/mysql start

   2、停止
   /usr/bin/mysqladmin -u root -p shutdown

   3、自动启动
   1)察看mysql是否在自动启动列表中
   [root@test1 local]# /sbin/chkconfig --list
   2)把MySQL添加到你系统的启动服务组里面去
   [root@test1 local]# /sbin/chkconfig – add mysql
   3)把MySQL从启动服务组里面删除。
   [root@test1 local]# /sbin/chkconfig – del mysql
七、更改MySQL目录

   MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步:

   1、home目录下建立data目录
   cd /home
   mkdir data

   2、把MySQL服务进程停掉:
   mysqladmin -u root -p shutdown

   3、把/var/lib/mysql整个目录移到/home/data
   mv /var/lib/mysql /home/data/
   这样就把MySQL的数据文件移动到了/home/data/mysql下

   4、找到my.cnf配置文件
   如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:
   [root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

   5、编辑MySQL的配置文件/etc/my.cnf
   为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。 修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.sock 。操作如下:
   vi  my.cnf    (用vi工具编辑my.cnf文件,找到下列数据修改之)
   # The MySQL server
    [mysqld]
    port   = 3306
    #socket  = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)
    socket  = /home/data/mysql/mysql.sock   (加上此行)

   6、修改MySQL启动脚本/etc/rc.d/init.d/mysql
   最后,需要修改MySQL启动脚本/etc/rc.d/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。
   [root@test1 etc]# vi /etc/rc.d/init.d/mysql
   #datadir=/var/lib/mysql    (注释此行)
   datadir=/home/data/mysql   (加上此行)

   7、重新启动MySQL服务
   /etc/rc.d/init.d/mysql start
   或用reboot命令重启Linux
   如果工作正常移动就成功了,否则对照前面的7步再检查一下。

   八、MySQL的常用操作

   注意:MySQL中每个命令后都要以分号;结尾。

   1、显示数据库
   mysql> show databases;
   +----------+
   | Database |
   +----------+
   | mysql  |
   | test   |
   +----------+
   2 rows in set (0.04 sec)
   Mysql刚安装完有两个数据库:mysql和test。mysql库非常重要,它里面有MySQL的系统信息,我们改密码和新增用户,实际上就是用这个库中的相关表进行操作。

   2、显示数据库中的表
   mysql> use mysql; (打开库,对每个库进行操作就要打开此库,类似于foxpro )
   Database changed

   mysql> show tables;
   +-----------------+
   | Tables_in_mysql |
   +-----------------+
   | columns_priv  |
   | db       |
   | func      |
   | host      |
   | tables_priv   |
   | user      |
   +-----------------+
   6 rows in set (0.01 sec)

   3、显示数据表的结构:
   describe 表名;

   4、显示表中的记录:
   select * from 表名;
   例如:显示mysql库中user表中的纪录。所有能对MySQL用户操作的用户都在此表中。
   Select * from user;

   5、建库:
   create database 库名;
   例如:创建一个名字位aaa的库
   mysql> create databases aaa;
6、建表:
   use 库名;
   create table 表名 (字段设定列表);
   例如:在刚创建的aaa库中建立表name,表中有id(序号,自动增长),xm(姓名),xb(性别),csny(出身年月)四个字段
   use aaa;
   mysql> create table name (id int(3) auto_increment not null primary key, xm char(8),xb char(2),csny date);
   可以用describe命令察看刚建立的表结构。
   mysql> describe name;

   +-------+---------+------+-----+---------+----------------+
   | Field | Type  | Null | Key | Default | Extra     |
   +-------+---------+------+-----+---------+----------------+
   | id  | int(3) |   | PRI | NULL  | auto_increment |
   | xm  | char(8) | YES |   | NULL  |        |
   | xb  | char(2) | YES |   | NULL  |        |
   | csny | date  | YES |   | NULL  |        |
   +-------+---------+------+-----+---------+----------------+

   7、增加记录
   例如:增加几条相关纪录。
   mysql> insert into name values('','张三','男','1971-10-01');
   mysql> insert into name values('','白云','女','1972-05-20');
   可用select命令来验证结果。
   mysql> select * from name;
   +----+------+------+------------+
   | id | xm  | xb  | csny    |
   +----+------+------+------------+
   | 1 | 张三 | 男  | 1971-10-01 |
   | 2 | 白云 | 女  | 1972-05-20 |
   +----+------+------+------------+

   8、修改纪录
   例如:将张三的出生年月改为1971-01-10
   mysql> update name set csny='1971-01-10' where xm='张三';

   9、删除纪录
   例如:删除张三的纪录。
   mysql> delete from name where xm='张三';

   10、删库和删表
   drop database 库名;
   drop table 表名;

   九、增加MySQL用户

   格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"
例1、增加一个用户user_1密码为123,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MySQL,然后键入以下命令:

   mysql> grant select,insert,update,delete on *.* to user_1@"%" Identified by "123";
例1增加的用户是十分危险的,如果知道了user_1的密码,那么他就可以在网上的任何一台电脑上登录你的MySQL数据库并对你的数据为所欲为了,解决办法见例2。

  例2、增加一个用户user_2密码为123,让此用户只可以在localhost上登录,并可以对数据库aaa进行查询、插入、修改、删除的操作(localhost指本地主机,即MySQL数据库所在的那台主机),这样用户即使用知道user_2的密码,他也无法从网上直接访问数据库,只能通过 MYSQL主机来操作aaa库。

   mysql>grant select,insert,update,delete on aaa.* to user_2@localhost identified by "123";

   用新增的用户如果登录不了MySQL,在登录时用如下命令:

   mysql -u user_1 -p -h 192.168.113.50 (-h后跟的是要登录主机的ip地址)

   十、备份与恢复

   1、备份

   例如:将上例创建的aaa库备份到文件back_aaa中

   [root@test1 root]# cd /home/data/mysql (进入到库目录,本例库已由val/lib/mysql转到/home/data/mysql,见上述第七部分内容)
   [root@test1 mysql]# mysqldump -u root -p --opt aaa > back_aaa

   2、恢复

   [root@test mysql]# mysql -u root -p ccc < back_aaa
首先,我们在网上download一个或者在安装盘的packages下面找到myql-server-5.xxxxx.i386.rpm,为了操作方便,我们在/目录下建立一个新的目录install,将安装文件放这里,安装的命令是非常简单的:以root身份进入

#cd /

#cd install

#rpm -i myql-server-5.xxxxx.i386.rpm

其实顺利的话,这个命令后MYSQL就安装完毕了。

我安装的时候连续出了4行错误提示:类似于如下提示

prel(DBI)is needed by myql-server-5.xxxxx.i386.rpm

……

以上错误提示的解决方法为:网上download或者到安装盘的packages下找到perl-dbi-xxx.i386.rpm ,Copy 到install下面。

#rpm -i perl-dbi-xxx.i386.rpm

继续执行

#rpm -i myql-server-5.xxxxx.i386.rpm

再出现错误提示,依旧按照蓝色字体的方法来解决,最终总会成功的。

顺便发几个MySQL的命令:

#rpm -qa|grep mysql 查看系统已经安装的MySQL的软件包

#service mysql start 启动MySQL

#service mysql stop 停止MySQL

#mysql 启动客户端

myslq》quit; 退出

#mysqladmin -u root password 123456   设置root的密码为123456

#mysql -h localhost -root -p    添加密码后登陆客户端的命令

 

几天研究了好久,终于被我知道了如何在Linux下安装mysql的二进制源代码包,最终解决了ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)的权限问题,真的是感慨万分啊,只想把他写出来,让自己以后不要忘记了,好了,废话不多说了,看看我的安装步骤吧!
1.下载mysql-5.0.51a-linux-i686-glibc23.tar.gz,下载地址为 http://download.unix-center.net/ ... i686-glibc23.tar.gz
2.把下载的文件放在你的主目录,在终端输入ls,如下:
[root@localhost mysql]# ls
Desktop   Documents   Download   Music   mysql-5.0.51a-linux-i686-glibc23.tar.gz   Pictures   Public   Templates   Videos
3.然后用tar -zxvf mysql-5.0.51a-linux-i686-glibc23.tar.gz命令解压到当前目录,如下:
[root@localhost mysql]# tar -zxvf mysql-5.0.51a-linux-i686-glibc23.tar.gz
[root@localhost mysql]# ls
Desktop Download   mysql-5.0.51a-linux-i686-glibc23       Pictures   Templates
Documents   Music     mysql-5.0.51a-linux-i686-glibc23.tar.gz   Public Videos
4.因为用的是源代码,所以要把文件copy到安装目录/usr/local/下,才能运行!
[root@localhost mysql]# cp –rf mysql-5.0.51a-linux-i686-glibc23 /usr/local/
5.查看系统有没有安装过mysql,查找rpm,如下:
[root@localhost mysql]# rpm –qa | grep mysql
有的话一个一个删除掉,用rpm -e命令,然后查找一下残留的文件:
[root@localhost mysql]# cd /
[root@localhost /]# find / -name mysql
如果查找到rm -rf filename删除.
[root@localhost /]# find / -name my.cnf
如果查找到删除,一般my.cnf是在/etc/my.cnf这里.
6.链接到mysql,如下:
[root@localhost /]# cd /home/mysql
[root@localhost mysql]# ln -s mysql-5.0.51a-linux-i686-glibc23 /usr/local/mysql
7.初始化mysql表格,安装 mysql 默认数据库,如下:
[root@localhost mysql]# cd /usr/local/mysql
[root@localhost mysql]# scripts/mysql_install_db --user=mysql
Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h localhost.localdomain password 'new-password'

Alternatively you can run:
./bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.   This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd . ; ./bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd mysql-test ; perl mysql-test-run.pl

Please report any problems with the ./bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at http://shop.mysql.com
8.修改目录权限,如下:
[root@localhost mysql]# cd /usr/local
[root@localhost local]# chgrp -R mysql mysql-5.0.51a-linux-i686-glibc23
[root@localhost local]# chgrp -R mysql mysql
[root@localhost local]# chown -R mysql mysql-5.0.51a-linux-i686-glibc23/data
[root@localhost local]# chown -R mysql mysql/data
[root@localhost local]# ln -s /usr/local/mysql/bin/* /usr/local/bin/
ln: creating symbolic link `/usr/local/bin/CMakeLists.txt': File exists
ln: creating symbolic link `/usr/local/bin/comp_err': File exists
ln: creating symbolic link `/usr/local/bin/comp_sql.c': File exists
ln: creating symbolic link `/usr/local/bin/make_sharedlib_distribution': File exists
ln: creating symbolic link `/usr/local/bin/make_win_bin_dist': File exists
ln: creating symbolic link `/usr/local/bin/make_win_src_distribution_old'
这几天研究了好久,终于被我知道了如何在Linux下安装mysql的二进制源代码包,最终解决了ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)的权限问题,真的是感慨万分啊,只想把他写出来,让自己以后不要忘记了,好了,废话不多说了,看看我的安装步骤吧!

1.下载mysql-5.0.51a-linux-i686-glibc23.tar.gz,下载地址为 http://download.unix-center.net/ ... i686-glibc23.tar.gz
2.把下载的文件放在你的主目录,在终端输入ls,如下:
[root@localhost mysql]# ls
Desktop Documents Download Music mysql-5.0.51a-linux-i686-glibc23.tar.gz Pictures Public Templates Videos
3.然后用tar -zxvf mysql-5.0.51a-linux-i686-glibc23.tar.gz命令解压到当前目录,如下:
[root@localhost mysql]# tar -zxvf mysql-5.0.51a-linux-i686-glibc23.tar.gz
[root@localhost mysql]# ls
Desktop Download mysql-5.0.51a-linux-i686-glibc23 Pictures Templates
Documents Music mysql-5.0.51a-linux-i686-glibc23.tar.gz Public Videos
4.因为用的是源代码,所以要把文件copy到安装目录/usr/local/下,才能运行!
[root@localhost mysql]# cp –rf mysql-5.0.51a-linux-i686-glibc23 /usr/local/
5.查看系统有没有安装过mysql,查找rpm,如下:
[root@localhost mysql]# rpm –qa | grep mysql
有的话一个一个删除掉,用rpm -e命令,然后查找一下残留的文件:
[root@localhost mysql]# cd /
[root@localhost /]# find / -name mysql
如果查找到rm -rf filename删除.
[root@localhost /]# find / -name my.cnf
如果查找到删除,一般my.cnf是在/etc/my.cnf这里.
6.链接到mysql,如下:
[root@localhost /]# cd /home/mysql
[root@localhost mysql]# ln -s mysql-5.0.51a-linux-i686-glibc23 /usr/local/mysql
7.初始化mysql表格,安装 mysql 默认数据库,如下:
[root@localhost mysql]# cd /usr/local/mysql
[root@localhost mysql]# scripts/mysql_install_db --user=mysql
Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h localhost.localdomain password 'new-password'

Alternatively you can run:
./bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd . ; ./bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd mysql-test ; perl mysql-test-run.pl

Please report any problems with the ./bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at http://shop.mysql.com
8.修改目录权限,如下:
[root@localhost mysql]# cd /usr/local
[root@localhost local]# chgrp -R mysql mysql-5.0.51a-linux-i686-glibc23
[root@localhost local]# chgrp -R mysql mysql
[root@localhost local]# chown -R mysql mysql-5.0.51a-linux-i686-glibc23/data
[root@localhost local]# chown -R mysql mysql/data
[root@localhost local]# ln -s /usr/local/mysql/bin/* /usr/local/bin/
ln: creating symbolic link `/usr/local/bin/CMakeLists.txt': File exists
ln: creating symbolic link `/usr/local/bin/comp_err': File exists
ln: creating symbolic link `/usr/local/bin/comp_sql.c': File exists
ln: creating symbolic link `/usr/local/bin/make_sharedlib_distribution': File exists
ln: creating symbolic link `/usr/local/bin/make_win_bin_dist': File exists
ln: creating symbolic link `/usr/local/bin/make_win_src_distribution_old': File exists
ln: creating symbolic link `/usr/local/bin/msql2mysql': File exists
ln: creating symbolic link `/usr/local/bin/myisamchk': File exists
ln: creating symbolic link `/usr/local/bin/myisam_ftdump': File exists
ln: creating symbolic link `/usr/local/bin/myisamlog': File exists
ln: creating symbolic link `/usr/local/bin/myisampack': File exists
ln: creating symbolic link `/usr/local/bin/my_print_defaults': File exists
ln: creating symbolic link `/usr/local/bin/mysqlaccess': File exists
ln: creating symbolic link `/usr/local/bin/mysqlaccess.conf': File exists
ln: creating symbolic link `/usr/local/bin/mysqladmin': File exists
ln: creating symbolic link `/usr/local/bin/mysqlbinlog': File exists
ln: creating symbolic link `/usr/local/bin/mysqlbug': File exists
ln: creating symbolic link `/usr/local/bin/mysqlcheck': File exists
ln: creating symbolic link `/usr/local/bin/mysql_client_test': File exists
ln: creating symbolic link `/usr/local/bin/mysql_config': File exists
ln: creating symbolic link `/usr/local/bin/mysql_convert_table_format': File exists
ln: creating symbolic link `/usr/local/bin/mysqld': File exists
ln: creating symbolic link `/usr/local/bin/mysqld-debug': File exists
ln: creating symbolic link `/usr/local/bin/mysqld_multi': File exists
ln: creating symbolic link `/usr/local/bin/mysqld_safe': File exists
ln: creating symbolic link `/usr/local/bin/mysqldump': File exists
ln: creating symbolic link `/usr/local/bin/mysqldumpslow': File exists
ln: creating symbolic link `/usr/local/bin/mysql_explain_log': File exists
ln: creating symbolic link `/usr/local/bin/mysql_find_rows': File exists
ln: creating symbolic link `/usr/local/bin/mysql_fix_extensions': File exists
ln: creating symbolic link `/usr/local/bin/mysql_fix_privilege_tables': File exists
ln: creating symbolic link `/usr/local/bin/mysql_fix_privilege_tables_sql.c': File exists
ln: creating symbolic link `/usr/local/bin/mysqlhotcopy': File exists
ln: creating symbolic link `/usr/local/bin/mysqlimport': File exists
ln: creating symbolic link `/usr/local/bin/mysqlmanager': File exists
ln: creating symbolic link `/usr/local/bin/mysql_secure_installation': File exists
ln: creating symbolic link `/usr/local/bin/mysql_setpermission': File exists
ln: creating symbolic link `/usr/local/bin/mysqlshow': File exists
ln: creating symbolic link `/usr/local/bin/mysql_tableinfo': File exists
ln: creating symbolic link `/usr/local/bin/mysqltest': File exists
ln: creating symbolic link `/usr/local/bin/mysqltestmanager': File exists
ln: creating symbolic link `/usr/local/bin/mysqltestmanagerc': File exists
ln: creating symbolic link `/usr/local/bin/mysqltestmanager-pwgen': File exists
ln: creating symbolic link `/usr/local/bin/mysql_tzinfo_to_sql': File exists
ln: creating symbolic link `/usr/local/bin/mysql_upgrade': File exists
ln: creating symbolic link `/usr/local/bin/mysql_upgrade_shell': File exists
ln: creating symbolic link `/usr/local/bin/mysql_waitpid': File exists
ln: creating symbolic link `/usr/local/bin/mysql_zap': File exists
ln: creating symbolic link `/usr/local/bin/ndb_config': File exists
ln: creating symbolic link `/usr/local/bin/ndb_cpcd': File exists
ln: creating symbolic link `/usr/local/bin/ndbd': File exists
ln: creating symbolic link `/usr/local/bin/ndb_delete_all': File exists
ln: creating symbolic link `/usr/local/bin/ndb_desc': File exists
ln: creating symbolic link `/usr/local/bin/ndb_drop_index': File exists
ln: creating symbolic link `/usr/local/bin/ndb_drop_table': File exists
ln: creating symbolic link `/usr/local/bin/ndb_error_reporter': File exists
ln: creating symbolic link `/usr/local/bin/ndb_mgm': File exists
ln: creating symbolic link `/usr/local/bin/ndb_mgmd': File exists
ln: creating symbolic link `/usr/local/bin/ndb_restore': File exists
ln: creating symbolic link `/usr/local/bin/ndb_select_all': File exists
ln: creating symbolic link `/usr/local/bin/ndb_select_count': File exists
ln: creating symbolic link `/usr/local/bin/ndb_show_tables': File exists
ln: creating symbolic link `/usr/local/bin/ndb_size.pl': File exists
ln: creating symbolic link `/usr/local/bin/ndb_test_platform': File exists
ln: creating symbolic link `/usr/local/bin/ndb_waiter': File exists
ln: creating symbolic link `/usr/local/bin/perror': File exists
ln: creating symbolic link `/usr/local/bin/replace': File exists
ln: creating symbolic link `/usr/local/bin/resolveip': File exists
ln: creating symbolic link `/usr/local/bin/resolve_stack_dump': File exists
ln: creating symbolic link `/usr/local/bin/safe_mysqld': File exists
9.启动mysql_safe,如下:
[root@localhost local]# bin/mysqld_safe --user=mysql --socket=/tmp/mysql.sock --port=3306 &
[1] 26860
[root@localhost local]# nohup: ignoring input and redirecting stderr to stdout
Starting mysqld daemon with databases from /usr/local/mysql/data
查看一下 3308 端口是否已经在监听:
netstat -anp|grep LISTEN
10.添加到系统自启动,如下:
[root@localhost local]# cp mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@localhost local]# chkconfig --add mysqld
11.启动mysql服务进程,如下:
[root@localhost local]# /etc/init.d/mysqld start
Starting MySQL [ OK ]
12.给 root 指定密码为"python",host为localhost ,如下:
[root@localhost local]# bin/mysqladmin --socket=/tmp/mysql.sock --port=3306 -u root -h localhost password 'python'
13.登录root,并给root授权!如下所示:
[root@localhost local]# bin/mysql --port=3306 -u root -p -S /tmp/mysql.sock
Enter password:
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 2
Server version: 5.0.51a MySQL Community Server (GPL)

Type 'help;' or '/h' for help. Type '/c' to clear the buffer.

mysql> grant all privileges on *.* to 'root'@'localhost' identified by 'python';
Query OK, 0 rows affected (0.54 sec)#[给使用localhost连接的root用户以所有权限]

mysql>flush privileges;
Query OK, 0 rows affected (0.26 sec)#[刷新用户权限列表,更新权限]
mysql> quit
Bye
14.新建一个用户,如下:
//登录MYSQL
[root@localhost local]# bin/mysql --port=3306 -u root -p -S /tmp/mysql.sock
Enter password:
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 3
Server version: 5.0.51a MySQL Community Server (GPL)

Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
//使用mysql数据库
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
//创建用户
mysql> insert into mysql.user(Host,User,Password) values("localhost","django",password("django"));
Query OK, 1 row affected, 3 warnings (0.60 sec)
//刷新系统权限表
mysql> flush privileges;
Query OK, 0 rows affected (0.08 sec)
这样就创建了一个名为:django 密码为:django 的用户。
//然后登录一下
mysql> exit;
Bye
[root@localhost local]# bin/mysql --port=3306 -u django -p -S /tmp/mysql.sock
Enter password: //输入密码
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 4
Server version: 5.0.51a MySQL Community Server (GPL)

Type 'help;' or '/h' for help. Type '/c' to clear the buffer.

mysql> //登录成功!
mysql> exit;
Bye
15.给新建的用户账户授权,如下:
//登录MYSQL(有ROOT权限)。我里我以ROOT身份登录.
[root@localhost local]# bin/mysql --port=3306 -u root -p -S /tmp/mysql.sock
Enter password:
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 2
Server version: 5.0.51a MySQL Community Server (GPL)

Type 'help;' or '/h' for help. Type '/c' to clear the buffer.

mysql>
//首先为用户创建一个数据库(django_demo)
mysql> create database django_demo;
Query OK, 1 row affected (0.41 sec)
//授权django用户拥有django_demo数据库的所有权限。
mysql> grant all privileges on django_demo.* to 'django'@'localhost' identified by 'django';
Query OK, 0 rows affected (0.13 sec)
//刷新系统权限表
mysql> flush privileges;
Query OK, 0 rows affected (0.09 sec)
环境:RedHat9.0
MySql版本:mysql-standard-4.0.18-pc-linux-i686.tar

把Mysql   解压到/usr/local/mysql目录下,运行
./scripts/mysql_install_db
提示一堆信息,再运行:
./bin/safe_mysqld   &

提示:
[1]   3355
[root&wlinux   mysql]#   Starting   mysqld   daemon   with   databases   from   /var/lib/mysql   040512   16:50:10   mysqld   ended

就这样停在那个地方,按下Ctrl   +   C后,出现
[1]+   Done                 ./bin/safe_mysqld
[root@wlinux   mysql]#
退回到正常提示状态下

这是什么原因呢?怎样才能启动mysql呢?启动mysql该用什么命令呢?
谁能告诉我,简单问题高分相送!


现在我又下载了两个文件:
MySQL-server-4.0.18-0.i386.rpm和MySQL-client-4.0.18-0.i386.rpm,
执行如下命令,却提示跟版本为mysql-3.23.54a-11的文件冲突。但我根本没装mysql-3.23.54a-11版本的Mysql呀!难道这是Redhat9.0自带的?怎么解决这个问题呢????


[root@wlinux   MySqlInstall]#   pwd
/usr/local/MySqlInstall
[root@wlinux   MySqlInstall]#   rpm   -ivh   MySQL-server-4.0.18-0.i386.rpm
warning:   MySQL-server-4.0.18-0.i386.rpm:   V3   DSA   signature:   NOKEY,   key   ID   5072e1f5
Preparing...                                 ###########################################   [100%]
file   /etc/my.cnf   from   install   of   MySQL-server-4.0.18-0   conflicts   with   file   from   package   mysql-3.23.54a-11

file   /usr/bin/isamchk   from   install   of   MySQL-server-4.0.18-0   conflicts   with   file   from   package   mysql-3.23.54a-11

file   /usr/bin/isamlog   from   install   of   MySQL-server-4.0.18-0   conflicts   with   file   from   package   mysql-3.23.54a-11
……………………
……………………
一、什麽是 MySQL
  
  MySQL (发音为 "My Ess Que Ell")是 Tcx 公司( http://www.tcx.se)开发的一个多人使用、多执行绪的 SQL 资料库 Server。MySQL 主要的目标在快速、稳定和容易使用。
  
  MySQL 可在此 http://www.mysql.net/ 取得。
  
  二、MySQL 的安装
  
  本文所使用的 MySQL 版本为 mysql-3.22.27.tar.gz(原始码档),作业环境为 RedHat6.0 +CLE0.8 。
  
  MySQL 预设情况下会安装至 /usr/local 目录下,不过为了日後移除方便,建议将 mysql 独立安装在 /usr/local/mysql 目录。底下为安装 MySQL 的步骤:
  
  取得 mysql-3.22.27.tar.gz 後, 於 /usr/local 目录下解开:
  # cd /usr/local
  # tar zxvf mysql-3.22.27.tar.gz
  # cd mysql-3.22.27
  设定 configure 安装选项,选择安装目录 (prefix)以及支援中文 Big5 码(with-charset=big5):
  # ./configure --prefix=/usr/local/mysql #--with-charset=big5
  开始编译并安装:
  # make
  # make install
  # scripts/mysql_install_db
  最後一个步骤是用来产生 MySQL grant tables(会建立一个 mysql 资料库和一些 tables,用来管理使用 MySQL 的授权资讯,也就是使用者有哪些使用资料库的权限)。
  
  三、启动、停止 MySQL
  
  要启动 MySQL 的方法:(以本文将 MySQL 安装在 /usr/local/mysql 为例)
  
  # /usr/local/mysql/share/mysql.server start
  注意在第一次执行前,须将 mysql.server 设成可执行(chmod 744 mysql.server),另外可将这行指令加在 /etc/rc.d/rc.local 档中,让 MySQL 在开机时自动启动。
  
  要停止 MySQL 的方法:
  
  # /usr/local/mysql/bin/mysqladmin shutdown
  如果你为 MySQL Administrator root 帐号(非作业系统的 root)设了密码,要停止 MySQL 则必须像下列这样做,MySQL 会询问你 root 的密码後才会执行 shutdown 的工作:
  
  # /usr/local/mysql/bin/mysqladmin -u root -p shutdown
  
  四、管理与使用 MySQL 简介
  
  在你开始前
  MySQL 提供了许多工具 (Client Tools)来与 MySQL 资料库 Server 连线,其中最主要的为 mysql 交谈式连线工具与 mysqladmin 公用程式,大部份时候使用者会用 mysql 来和资料库 Server 交谈。底下就以 mysql 连线工具来介绍如何维护与使用 MySQL。(以本文安装为例,mysql 工具位於 /usr/local/mysql/bin/mysql)。
  
  mysql 的使用语法如下:
  
  mysql [-u username] [-h host] [-p[password]] [dbname]
  MySQL 资料库有自己一套使用者帐号与权限管控方法,所以这边所指定的 username 与 password 是 MySQL 的使用者与密码,而不是作业系统的使用者与密码(当然任何使用者都能执行 mysql ,然後以 MySQL 的任何帐号进入使用) 。
  
  在你第一次安装好 MySQL 时,MySQL 的管理帐号为 root,没有设定密码 (非作业系统的 root)。所以在开始前,请先照下列步骤为 root 设好密码:
  
  使用 mysql 与 MySQL 资料库 Server 连线:
  # /usr/local/mysql/bin/mysql -u root mysql
  Reading table information for completion of table and column names
  You can turn off this feature to get a quicker startup with -A
  
  Welcome to the MySQL monitor. Commands end with ; or /g.
  Your MySQL connection id is 201 to server version: 3.22.27
  
  Type 'help' for help.
  
  mysql>
  
  在下了 mysql -u root mysql 指令,指定以 root 帐号并开启 mysql 系统资料库,连线至 MySQL 後,会看到一些提示讯息与 mysql 工具的提示符号,以後大部份的工作皆在此提示符号下完成。
  
  更改 MySQL系统管理者 root 密码:
  mysql> update user set password=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.00 sec)
  
  mysql> quit
  Bye
  注意每个指令後要加上一个分号 ";" 才会让 mysql 开始执行。而第二道指令会让已载入记忆体的 mysql 系统资料库更新,最後离开 mysql 工具程式。
  
  在更新 root 密码後,日後要与 MySQL 连线的方法为:
  
  mysql -u root -p新密码
  或者是这样,让 mysql 询问 root 的密码:
  
  mysql -u root -p
  
  资料库维护
  接下来,我们以简单的通讯录资料库作为例子,来介绍如何用 mysql 工具程式来做资料库的维护(新增、授权、资料表维护等)。
  
  首先,以 MySQL root 帐号连线後建立一 addbook 资料库:
  # /usr/local/mysql/bin/mysql -u root -p
  Enter password:
  Welcome to the MySQL monitor. Commands end with ; or /g.
  Your MySQL connection id is 207 to server version: 3.22.27
  
  Type 'help' for help.
  
  mysql> create databae addbook;
  Query OK, 1 row affected (0.00 sec)
  指定使用 addbook 资料库,并建立一个 friends 资料表:
  mysql> use addbook;
  Database changed
  
  mysql> create table friends (
  -> name Char(15),
  -> telphone VarChar(20),
  -> icq Char(10),
  -> address VarChar(30)
  -> );
  Query OK, 0 rows affected (0.00 sec)
  新增几笔资料,并查询看看:
  mysql> insert into friends values(
  -> "maa", "29016710", "46243046", "台北县新庄市"
  -> );
  Query OK, 1 row affected (0.00 sec)
  
  mysql> insert into friends (name, icq, telphone, address ) Values (
  -> "cxlin", "39425893", "7654321", "台北县"
  -> );
  Query OK, 1 row affected (0.01 sec)
  
  mysql> select * from friends;
  +-------+----------+----------+--------------+
  | name | telphone | icq   | address   |
  +-------+----------+----------+--------------+
  | maa  | 29016710 | 46243046 | 台北县新庄市 |
  | cxlin | 7654321 | 39425893 | 台北县    |
  +-------+----------+----------+--------------+
  2 rows in set (0.00 sec)
  
  第二个 insert 指令指定了资料栏位的插入顺序,用法较第一个为弹性,而第一个指令必须依资料表建立结构时的顺序插入资料。
  
  更新、删除资料表记录:
  mysql> update friends set address = "桃园县" where name = "cxlin";
  Query OK, 1 row affected (0.00 sec)
  Rows matched: 1 Changed: 1 Warnings: 0
  
  mysql> select * from friends where name = "cxlin";
  +-------+----------+----------+---------+
  | name | telphone | icq   | address |
  +-------+----------+----------+---------+
  | cxlin | 7654321 | 39425893 | 桃园县 |
  +-------+----------+----------+---------+
  1 row in set (0.00 sec)
  
  mysql> delete from friends where name = "maa";
  Query OK, 1 row affected (0.01 sec)
  
  mysql> select * from friends;
  +-------+----------+----------+---------+
  | name | telphone | icq   | address |
  +-------+----------+----------+---------+
  | cxlin | 7654321 | 39425893 | 桃园县 |
  +-------+----------+----------+---------+
  1 row in set (0.00 sec)
  最後,建好资料库与资料表後,把 addbook 资料库中所有资料表的使用权限(select、insert、update、delete)授权给 maa@localhost(再次提醒,此处的 maa 为 MySQL 的使用者帐号,而非作业系统的 maa 帐号):
  mysql> grant select, insert, update, delete
  -> on addbook.*
  -> to maa@localhost identified by '1234567';
  Query OK, 0 rows affected (0.00 sec)
  之後,可用 maa 的身份进入 MySQL 存取 addbook 资料库:
  
  # /usr/local/mysql/bin/mysql -u maa -p addbook
  Enter password:
  Reading table information for completion of table and column names
  You can turn off this feature to get a quicker startup with -A
  
  Welcome to the MySQL monitor. Commands end with ; or /g.
  Your MySQL connection id is 211 to server version: 3.22.27
  
  Type 'help' for help.
  
  mysql> status
  --------------
  ./mysql Ver 9.36 Distrib 3.22.27, for pc-linux-gnu (i686)
  
  Connection id:     26
  Current database:    addbook
  Current user:      maa@localhost
  Server version     3.22.27
  Protocol version    10
  Connection       Localhost via UNIX socket
  UNIX socket       /tmp/mysql.sock
  Uptime:    


2.mysql5.1.30  初次启动会出现Starting MySQL.Manager of pid-file quit without updating fi[FAILED]的报错,需要注释/etc/my.cnf里的skip-federated注释掉即#skip-federated就OK了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值