- 浏览: 185451 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
masuweng:
好好
与ant结合使用yguard -
lenomon:
你也可以看看这个,Linux同步时间命令ntpdate
Linux与远程时间服务器同步 -
木叶之舟:
我这里有个疑问,就是我想通过拦截外键的属性,该怎样实现呢?
比 ...
springside的filter查询 -
dongbiying:
好!
与ant结合使用yguard -
javaray:
遨豪(大连)科技有限公司自2007年与Liferay,Inc合 ...
Liferay的CAS SSO实现思路
1、下载MySQL 的安装文件
安装MySQL 需要下面两个文件:
下载地址为:http://dev.mysql .com/downloads/mysql /5.1.html,打开此网页,下拉网页找到“ Linux x86 generic RPM (statically linked against glibc 2.2.5) 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.1.7-0.i386.rpm MySQL -client-5.1.7-0.i386.rpm
warning: MySQL -server-5.1.7-0.i386.rpm
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.1.7-0.i386.rpm
warning: MySQL -client-5.1.7-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默认安装在一个目录,它的数据库文件、配置文件和命令文件分别在不同的目录,了解这些目录非常重要,尤其对于Linux的初学者,因为 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
MySQL数据库不允许从远程访问怎么办?本文提供了三种解决方法:
1、改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
mysql -u root -pvmwaremysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
2、授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WI
TH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY
'mypassword' WITH GRANT OPTION;
我用的第一个方法,刚开始发现不行,在网上查了一下,少执行一个语句 mysql>FLUSH RIVILEGES
使修改生效,就可以了
另外一种方法:
在安装mysql的机器上运行:
1、d:\mysql\bin\>mysql -h localhost -u root
//这样应该可以进入MySQL服务器
2、mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION
//赋予任何主机访问数据的权限
3、mysql>FLUSH PRIVILEGES
//修改生效
4、mysql>EXIT
//退出MySQL服务器
这样就可以在其它任何的主机上以root身份登录啦。
(1) 最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值,
如 default-character-set = utf8
character_set_server = utf8
修改完后,重启mysql的服务,service mysql restart
使用 mysql> SHOW VARIABLES LIKE 'character%';查看,发现数据库编码均已改成utf8
+--------------------------+---------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | D:"mysql-5.0.37"share"charsets" |
+--------------------------+---------------------------------+
(2) 还有一种修改字符集的方法,就是使用mysql的命令
mysql> SET character_set_client = utf8 ;
mysql> SET character_set_connection = utf8 ;
mysql> SET character_set_database = utf8 ;
mysql> SET character_set_results = utf8 ;
mysql> SET character_set_server = utf8 ;
mysql> SET collation_connection = utf8 ;
mysql> SET collation_database = utf8 ;
mysql> SET collation_server = utf8 ;
唉,不小心把MYSQL root的密码弄丢了,,真是郁闷,尝试了种种命令,都是需要root密码才能启动。于是只要google一下了。。看了几篇文章,讲的不是很仔细,经过摸索也算是完成了,下面特意加以补充记录了下来
1、首先停止正在运行的MySQL进程
Linux下,运行 killall -TERM mysqld
Windows下,如果写成服务的 可以运行:net stop mysql,如未加载为服务,可直接在进程管理器中进行关闭。
2、以安全模式启动MySQL
Linux下,运行 /usr/local/mysql/bin/mysqld_safe –skip-grant-tables –skip-networking &
Windows下,打开一个CMD,命令行下运行 X:/MySQL/bin/mysqld-nt.exe –skip-grant-tables
(注:参数–skip-grant-tables为跳过授权表;–skip-networking为不监听TCP/IP连接)
linux下 记得加入“&”后面执行否则执行不了下步操作,windows 就开着这个CMD不关闭就可以了
3、更改密码
第一种方法:
完成以后就可以不用密码进入MySQL了
Linux下,运行 /usr/local/mysql/bin/mysql -u root -p 进入
Windows下,再重新打开一个CMD X:/MySQL/bin/mysql -u root -p 进入
使用 sql 修改:
>use mysql
>update user set password=password(”新密码”) where user=”root”;
第二种方法:
使用命令修改
Linux下,运行 /usr/local/mysql/bin/mysqladmin -u root -p password 新密码
Windows下,再重新打开一个CMD X:/MySQL/bin/mysqladmin -u root -p password 新密码
第四步,停掉以上服务重新正常打开mysql服务
Linux下, /usr/local/mysql/bin/mysqld_safe &
Windows下, net start mysql
发表评论
-
Ubuntu桌面假死,非重启修复方法
2013-09-24 20:30 10025现在Linux用户越来越多,而且用Ubuntu的占了很大比例 ... -
ubuntu12.04下快速安装常用软件
2013-09-19 14:54 717google拼音输入法: 安装命令: sudo a ... -
USE LINUX下设置开机时间同步
2010-02-01 16:13 2179设置步骤如下: STEP1:编辑脚 ... -
[转]suse下设置IP的两种方法
2010-02-01 13:43 5312原文地址:http://www.cnblogs.com/yzh ... -
Linux与远程时间服务器同步
2010-01-28 11:06 5132# touch /var/log/ntpdate.log ... -
linux lvm
2010-01-20 18:22 1218要说清整个机制,先要介绍几个概念: 物理卷(Physical ... -
使用Java Service Wrapper设置tomcat作为linux服务并且开机自动启动
2009-12-16 16:59 2116原文地址:http://wenson.iteye.com/bl ... -
SUSE Linux Enterprise下安装JDK1.6、Tomcat5.5及pureftp,SSH
2009-11-17 11:35 2533原文地址:http://till.iteye.com/bl ...
相关推荐
- 在生产环境中,建议配置适当的权限和安全选项,比如使用`bind-address`限制远程访问,启用日志记录等。 - 考虑数据备份策略,以防数据丢失。可以定期使用`mysqldump`进行全量备份,或者利用InnoDB的二进制日志...
此外,为了提高数据库的安全性,建议进行初始化设置,例如更改root用户的默认密码,限制远程访问,创建其他用户,以及设置防火墙规则允许特定IP访问MySQL服务。 总的来说,升级或安装Linux上的MySQL涉及到一系列...
本文将详细介绍在Linux环境下安装MySQL的过程,并分享一些个人经验。 首先,我们需要确认系统中是否已安装了MySQL。通过运行`rpm -qa | grep -i mysql`命令,我们可以列出所有已安装的MySQL相关软件包。如果发现...
- 限制远程访问,只允许特定IP地址连接。 - 避免使用弱密码,定期更改用户密码。 - 安装并启用MySQL日志,以便监控和排查问题。 总之,MySQL 5.7.27的下载安装配置过程涉及多个步骤,每个环节都需要细心处理。理解...
- **安全措施**:加强安全防护措施,如限制远程访问、使用强密码等。 ### 七、总结 MySQL 5.7.29 是一个非常成熟且功能强大的数据库版本,尤其在 CentOS 这样的稳定平台上表现更佳。无论是对于个人开发者还是企业...
安装MySQL服务器端,我们使用的是`rpm`命令,这是一个Linux下的包管理器。安装时,通常会使用`-ivh`参数,其中`i`代表安装,`v`表示详细信息,`h`则会在安装过程中显示进度。例如: ```bash [root@test1 local]# ...
2. 配置防火墙规则,限制远程访问MySQL服务器。 3. 定期备份数据,防止数据丢失。 通过以上步骤,你应能成功安装并配置MySQL 5。记得在实际操作中根据系统提示和具体情况调整,遇到问题可以查阅MySQL官方文档或社区...
在本文中,我们将详细讨论如何在Linux环境下安装MySQL以及设置MySQL的主从备份。主从备份是数据库高可用性和数据安全的重要策略,它允许数据在主服务器(Master)和从服务器(Slave)之间进行实时同步,确保即使主...
安装完成后,记得配置MySQL的安全设置,例如设置root用户的强密码,启用或禁用远程访问,以及定期更新和备份数据以防止数据丢失或被攻击。 通过以上步骤和理解,你可以成功地在离线环境中安装并使用MySQL 5.7.28,...
7. **配置**:安装完成后,需要进行必要的配置,如设置root用户的密码,启动MySQL服务,以及配置防火墙规则允许远程访问等。 8. **新特性**:MySQL 5.7引入了一些关键特性,如InnoDB存储引擎的性能提升、JSON数据...
- 在配置文件中临时开启无密码登录是为了安全配置MySQL服务器,这是在服务器刚安装完成时,系统没有设定root密码的情况下的临时解决方案。 - 使用MySQL的UTF-8字符集可以支持包括中文在内的多语言字符,同时...
- **安全性**:确保MySQL的安全配置正确,尤其是在允许远程访问的情况下。 - **备份**:定期备份数据库以防止数据丢失或损坏。 - **性能调优**:根据实际需求调整MySQL配置以优化性能。 通过以上步骤,您可以在...
- 为数据库设置合理的安全策略,如限制远程访问,使用复杂的密码,并定期更新密码。 - 监控MySQL性能,如查询执行时间、内存使用情况和磁盘I/O,以便进行优化。 - 配置适当的索引,以加速查询速度。 - 使用复制技术...
2. 防火墙配置:限制对MySQL服务的远程访问。 3. 定期备份:定期备份数据库以防止数据丢失。 八、进一步学习 了解MySQL的安装只是入门的第一步,后续还需掌握SQL语言、数据库设计、性能优化等方面的知识。MySQL官方...
8. **安装和配置**:安装完`.rpm` 包后,还需要执行一些配置步骤,如设置root用户的密码,启动MySQL服务,以及可能的防火墙配置,以允许远程访问。 9. **维护和更新**:安装后,定期检查MySQL的更新和安全补丁是至...
至此,你已经成功地在CentOS7上安装并配置了MySQL5.7数据库,包括设置root用户的新密码并允许远程访问。这只是一个基础的配置,实际环境中可能还需要考虑安全加固、数据备份、性能优化等更多细节。在进行生产环境...
- 在安装新版本前,需检查系统是否已有MySQL,使用`rpm -qa | grep mysql`命令。 - 如果已安装,可以使用`rpm -e`或`rpm -e --nodeps`命令卸载MySQL,后者用于强制删除有依赖的文件。 4. **通过yum安装MySQL** -...
5. **安全配置**:安装后的MySQL可能存在一些默认的安全问题,如弱密码、远程访问未限制等。因此,首次启动MySQL时,通常会提示你运行`mysql_secure_installation`脚本来强化安全性,包括修改root密码、删除匿名用户...
以上内容只是Linux环境下MySQL使用和管理的基础知识,实际操作中还需要掌握更多的高级特性,如复制、分区、触发器、存储过程等。如果你需要深入学习,可以参考博文链接提供的资源,或者查阅MySQL官方文档和社区论坛...
在本文档中,我们详细介绍了如何在 CentOS 6.4 操作系统上安装和配置 MySQL 5.6。...例如,定期更新密码、限制远程访问、监控资源使用以及根据工作负载调整配置。此外,保持数据库备份也至关重要,以防数据丢失。