在CU上整理的MySQL的常见问题及解答

mysql|解答|问题

Q: 如何安装LAMP(Linux+Apache+MySQL+PHP)

A:http://www.freelamp.com/1003235699/index_html

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

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

用一下方法安装:

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

通常情况下,安装完这个rpm包后,只具备有mysqld服务功能,其它相关的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手册

时间: 2025-01-21 12:17:04

在CU上整理的MySQL的常见问题及解答的相关文章

RDS for MySQL Mysqldump 常见问题和处理

RDS for MySQL Mysqldump 常见问题和处理   GTID 特性相关 避免表级锁等待 设置导出字符集 其他导出时需要注意的选项 举例 RDS for MySQL 不支持的选项 RDS for MySQL 逻辑备份 1. GTID 特性相关 MySQL 5.6 引入了 GTID 特性,因此随 5.6 版本分发的 mysqldump 工具增加了 --set-gtid-purged 选项. # 选项名称 默认值 可选值 作用 1 set-gtid-purged AUTO ON, OF

在ECS上自建MySQL手工容灾环境

1.环境介绍 很多云上的客户因为数据库规模小,可能最开始只购买了ECS,而他们也需要数据库服务器,很可能会采用自建MySQL来实现.阿里云RDS已经提供了完全的数据库运维服务,包括监控.优化.主备高可用等.而对小白用户来说,为了自己业务连续性和学习的需要,也是很有必要了解如何自建MySQL主备以及主备切换流程的.在主从复制实施前,单机单实例缺乏实时数据复制方案来保证实例出现故障时提供另一个完好且独立的实例迅速切换,短时间内恢复客户业务. 2.数据库主从复制实施 2.1.主从复制原理 MySQL提

mysql-在Azure website 上怎么创建MySQL数据库??

问题描述 在Azure website 上怎么创建MySQL数据库?? 一直在用这个,可是不知怎样创建 解决方案 据我所知,中国版Azure大概有三种方式: 1.当我们根据模板创建PHP网站的时候,会为我们创建免费的MySQL数据库,但数据库较小,并且数量有限,使用完则不能继续使用. 2.在虚拟机上安装MySQL,然后应用程序在其他地方进行调用:http://www.windowsazure.cn/zh-cn/manage/linux/common-tasks/mysql-on-a-linux-

mysql-发布到AZURE的网站访问不到AZURE上创建的MySQL数据库

问题描述 发布到AZURE的网站访问不到AZURE上创建的MySQL数据库 MySQL配置里有设置IP的 我设置本地IP可以访问 网站发布到AZURE就不能访问了. 解决方案 ip设置成AZURE的或用相对路径 解决方案二: 需要在虚拟机的endpoint上配置端口映射,默认需要开tcp 3306 解决方案三: 我用的是azure的web应用 不是虚拟机

mysql 查看MySQL服务器上的所有MySQL数据库

本文介绍当我们登录到一台MySQL服务器上时,如何查看当前服务器上有哪些MySQL数据库?命令是show databases. 如何登录到MySQL服务器,以及如何使用MySQL命令行,我们前面的一些文章中已经有介绍,欢迎大家去看看! 现在我们来看,当我们已经登录到MySQL服务器上了,想要看看当前MySQL服务器上有哪MySQL数据库呢?且看命令. 这里的命令是"show databases;"  代码如下 复制代码 mysql> show databases; +------

阿里旺旺MAC版使用常见问题及解答汇总

  阿里旺旺是目前很多淘宝买家都在使用的聊天社交软件,方便买家与卖家在线进行沟通.而大家熟知的阿里旺旺不仅有PC版,还有阿里旺旺MAC版.关于阿里旺旺MAC版的使用问题的教程目前还不多,所以,今天,小编特别为大家整理了一下阿里旺旺MAC版使用常见问题及解答汇总,希望对大家有帮助! 阿里旺旺MAC版 阿里旺旺MAC版使用常见问题及解答汇总: 1.览器上面点击旺旺聊天的图标后无法打开旺旺客户端? 如果你在网页上面点击旺旺聊天功能没有响应,你可以尝试手动下载旺旺浏览器插件并安装,然后重新启动浏览器就可

Win7/Win8.1免费升级Win10正式版常见问题汇总解答

  今天,微软宣布Windows 10正式版将于7月29日发布,届时正版Win7和Win8.1用户可免费升级到Win10.与此同时,微软官网也迎来了改版,并回答了一些Windows 10免费升级相关的问题,下面小编就为大家带来Win7/Win8.1免费升级Win10正式版常见问题汇总解答,具体如下. Win10何时推出? Win10将于2015年7月29日发布. 预订Win10免费升级版有何意义? 我们将在有限时间内为符合条件的Windows7 SP1.Windows 8.1更新和Windows

打不开ubuntu服务器端的mysql,在线求解答!

问题描述 打不开ubuntu服务器端的mysql,在线求解答! 查询状态的时候打印如下 xxx@r10f17332:~$ service mysql status mysql stop/waiting 启动的时候打印如下 xxx@r10f17332:~$ service mysql start start: Rejected send message, 1 matched rules; type="method_call", sender=":1.114" (uid

MySQL权限的详细解答

MySQL权限的详细解答 一.权限表 mysql数据库中的3个权限表:user .db. host 权限表的存取过程是: 1)先从user表中的host. user. password这3个字段中判断连接的IP.用户名.密码是否存在表中,存在则通过身份验证: 2) 通过权限验证,进行权限分配时,按照user?db?tables_priv?columns_priv的顺序进行分配.即先检查全局权限表 user,如果user中对应的权限为Y,则此用户对所有数据库的权限都为Y,将不再检查db, tabl