支付方式  联系我们   网站地图       
首页 关于域浪 互联网数据中心业务、主机托管、主机租用、机架租用、带宽租用、机房介绍、机房对比、CCN网络加速 adsl专线、深圳adsl专线 虚拟主机、域名注册、数据库、企业邮局、动态域名 网络安全、网络临近平台、安全服务、防火去墙租用、安全产品、域浪抗DDOS防火墙、NetScreen防火墙 技术支持  
   当前位置:首页 >> 技术支持 >> MySQL数据库技术 >> 在CU上整理的MySQL的常见问题及解答
 
精华文章
    Mysql服务器的启动与停...  
    Mysql服务器的启动与停...  
    图解MySQL数据库的安装...  
    图解MySQL数据库的安装...  
    怎样在MySQL中直接储存...  
    MySQL数据库常见错误问...  
    MySQL数据库常见错误问...  
    MySQL数据库常见错误问...  
    MySQL出错代码含义列表...  
    如何学习MySQL数据库 ...  
    Linux 应用集成 MySQL...  
    如何从 MySQL 数据库表...  
    在服务器上安装、使用...  
    在CU上整理的MySQL的常...  
    教你如何在Linux/Unix...  
    MySQL 中修改密码及访...  
    其他主题  
    处理查询  
    客户机程序4—在运行时...  
    客户机程序3—产生连接...  
    客户机程序2—增加错误...  
    客户机程序1—连接到服...  
    MySQL数据导入与导出  
    mysql新手指南  
    SQL Server疑难排除步...  
    如何设置数据库  
  更多>>  
   MySQL数据库技术
 在CU上整理的MySQL的常见问题及解答
Q: 如何安装LAMP(Linux+Apache+MySQL+PHP) 



A:[url]http://www.freelamp.com/1003235699/index_html[/url] 





Q: 如何使用rpm方式安装mysql 



A:首先下载合适的rpm包,例如下载了文件 MySQL-5.0.15-0.i386.rpm 



用以下方法安装: 



#rpm -ivhU MySQL-5.0.15-0.i386.rpm 



通常情况下,安装完这个rpm包后,只具备有mysql的服务功能,其它相关的client程序和开发包还需要另外安装 



#rpm -ivhU MySQL-devel-5.0.15-0.i386.rpm 



#rpm -ivhU MySQL-client-5.0.15-0.i386.rpm 





Q: 如何安装已经编译好了的mysql二进制包 



A:首先下载合适的二进制包,例如下载了文件 mysql-standard-4.1.13-pc-linux-gnu-i686.tar.gz 



#groupadd mysql 



#useradd -g mysql mysql 



#cd /usr/local 



#tar zxf mysql-standard-4.1.13-pc-linux-gnu-i686.tar.gz 



#ln -s mysql-standard-4.1.13-pc-linux-gnu-i686 mysql 



#cd mysql 



#scripts/mysql_install_db --user=mysql 



#chgrp -R mysql * 



#bin/mysqld_safe --user=mysql & 



有什么个性化的配置,可以通过创建 /etc/my.cnf 或者 /usr/local/mysql/data/my.cnf,增加相关的参数来实现。 





Q: 如何自己编译mysql 



A:以redhat linux 9.0为例: 



下载文件 mysql-4.1.13.tar.gz 



#tar zxf mysql-4.1.13.tar.gz 



#cd mysql-4.1.13 



#./configure --prefix=/usr/local/mysql --enable-assembler \ 



--with-mysqld-ldflags=-all-static --localstatedir=/usr/local/mysql/data \ 



--with-unix-socket-path=/tmp/mysql.sock --enable-assembler \ 



--with-charset=complex --with-low-memory --with-mit-threads 



#make 



#make install 



#groupadd mysql 



#useradd -g mysql mysql 



#chgrp -R mysql /usr/local/mysql/ 



#/usr/local/mysql/bin/mysqld_safe --user=mysql & 



有什么个性化的配置,可以通过创建 /etc/my.cnf 或者 /usr/local/mysql/data/my.cnf,增加相关的参数来实现。 





Q: 如何登录MySQL 



A:使用mysql提供的客户端工具登录 



#PATH_TO_MYSQL/bin/mysql -uuser -ppassword dateabase 





Q: 忘记MySQL的root密码,怎么修改 



A:如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。 



启动 MySQL :PATH_TO_MYSQL/bin/mysqld --skip-grant-tables & 



就可以不需要密码就进入 MySQL 了。 



然后就是 



mysql>use mysql 



mysql>update user set password=password("new_pass") where user="root"; 



mysql>flush privileges; 



重新杀 MySQL ,用正常方法启动 MySQL 



一定注意:很多新手没有用password=password("..."),而是直接password="..."所以改掉密码不好使 





Q: 为什么mysqld起来了,却无法登录,提示"/var/lib/mysql/mysql.sock"不存在 



A:这种情况大多数是因为你的mysql是使用rpm方式安装的,它会自动寻找 /var/lib/mysql/mysql.sock 这个文件, 



通过unix socket登录mysql。 



常见解决办法如下: 



1、 



创建/修改文件 /etc/my.cnf,至少增加/修改一行 



[mysql] 



[client] 



socket = /tmp/mysql.sock 



#在这里写上你的mysql.sock的正确位置,通常不是在 /tmp/ 下就是在 /var/lib/mysql/ 下 





2、 



指定IP地址,使用tcp方式连接mysql,而不使用本地sock方式 



#mysql -h127.0.0.1 -uuser -ppassword 





3、 



为 mysql.sock 加个连接,比如说实际的mysql.sock在 /tmp/ 下,则 



#ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock即可 





Q: 如何修改mysql用户密码 



A:大致有2种方法: 



1、 



mysql>mysql -uroot -pxxx mysql 



mysql>update user set password=password('new_password') where user='user';; 



mysql>flush privileges; 





2、 



格式:mysqladmin -u用户名 -p旧密码 password 新密码 



#mysqladmin -uroot -password ab12 



注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。 





Q: 如何新增一个mysql用户 



A:格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码" 



例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令: 



mysql>grant select,insert,update,delete on *.* to test1@"%" Identified by "abc"; 



但例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。 



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



mysql>grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc"; 



如果你不想test2有密码,可以再打一个命令将密码消掉。 



mysql>grant select,insert,update,delete on mydb.* to test2@localhost identified by ""; 



另外,也可以通过直接往user表中插入新纪录的方式来实现。 





Q: 如何查看mysql有什么数据库 



A:mysql>show databases; 





Q: 如何查看数据库下有什么表 



A:mysql>show tables; 





Q: 如何导出数据 



A:有几种方法,如下: 



1、使用mysqldump 



#mysqldump -uuser -ppassword -B database --tables table1 --tables table2 > dump_data_20051206.sql 



详细的参数 





2、backup to语法 



mysql>BACKUP TABLE tbl_name[,tbl_name...] TO '/path/to/backup/directory'; 



详细请查看mysql手册 





3、mysqlhotcopy 



#mysqlhotcopy db_name [/path/to/new_directory] 



或 



#mysqlhotcopy db_name_1 ... db_name_n /path/to/new_directory 



或 



#mysqlhotcopy db_name./regex/ 



详细请查看mysql手册 





4、select into outfile 



详细请查看mysql手册 





5、客户端命令行 



#mysql -uuser -ppassword -e "sql statements" database > result.txt 





以上各种方法中,以mysqldump最常用 





Q: 如何在命令行上执行SQL语句 



A:#mysql -uuser -ppassword -e "sql statements" database 





Q: 如何导入备份出来的文件 



A:常见几种方法如下: 



1、由mysqldump出来的文件 



#mysql -uuser -ppassword [database] < dump.sql 





2、文件类型同上,使用source语法 



mysql>source /path_to_file/dump.sql; 





3、按照一定格式存储的文本文件或csv等文件 



#mysqlimport [options] database file1 [file2....] 



详细请查看mysql手册 





4、文件类型同上,也可以使用load data语法导入 



详细请查看mysql手册 

  • 上一篇文章: 在服务器上安装、使用MySQL的注意事项
  • 下一篇文章: 教你如何在Linux/Unix平台安装MySQL
  • 深圳地址:深圳市罗湖区宝安北路国际商品交易大厦七楼C30室
    Tel:0755-82266883/82267566 Fax:0755-82261966
    邮编:518000 
                        Copyright © 2006-2008 elang.cn All Rights Reserved 深圳市域浪网络技术有限公司版权所有