------- android培训、java培训、期待与您交流! ----------
第一点 血的教训,在执行update语句的时候一定 要先select一下 切记 !切记!
第二点 在生产环境下 对与数据库一定要写 个简单shell脚本 对数据每隔一段时间进行定时备份。尤其是对8年以上的服务器 一定要备份,硬盘瘫了的时候发现备份还在是多么的兴奋啊。深有体会不止一次。
第三点 如果服务器允许最好做个硬 red5 这时候只能看到一块硬盘是正常的,如果 服务器确实差点 最好做个软red
第四 最好添加一个其他用户 别动不动就用root 用户天神应该有他的作用
简单说一下我遇到的问题及解决办法吧。
网站不能访问出现的问题
然后登录
[root@localhost bin]# ./startup.sh
Using CATALINA_BASE: /cme/apache-tomcat-6.0.33
Using CATALINA_HOME: /cme/apache-tomcat-6.0.33
Using CATALINA_TMPDIR: /cme/apache-tomcat-6.0.33/temp
Using JRE_HOME: /usr
Using CLASSPATH: /cme/apache-tomcat-6.0.33/bin/bootstrap.jar
touch: 无法创建"/cme/apache-tomcat-6.0.33/logs/catalina.out": 只读文件系统
[root@localhost bin]# /cme/apache-tomcat-6.0.33/bin/catalina.sh: line 375: /cme/apache-tomcat-6.0.33/logs/catalina.out: 只读文件系统
^C
[root@localhost bin]# mount -o remount,rw /
mount: cannot remount block device /dev/mapper/VolGroup-lv_root read-write, is write-protected
百度了一下说是硬盘有错误
我的解决办法
1.进入,如果是这个问题他会提示输入root密码,或者提示按ctrl+D,
ctrl+D是错误的,你要输入密码
2.重新挂载根分区,以读写方式挂载
mount -o remount,rw /
vi /etc/fstab 修改所有为不检查文件系统(修改前做好记录,系统完好后改回去)
例如:
#/dev/sda5 /up2 ext4 defaults 0 0
修改最后一个数字0,为0时,不检查文件系统
这是可以进入,但是有些残疾,如果要备份就执行这一步备份较重要的东西
3.备份完之后重启,依然会提示第一次重启的界面
输入密码后#fsck -fy /dev/sda2 (后面的设备号根据提示来,提示什么就修复什么) 检查并修复文件系统,完成后重启即可进入,如果发现又文件损坏,使用备份修复,
4.重新编辑/etc/inittab 还原
修复好了硬盘
tomcat 能够正常启动
但是mysql 能正常启动 但是数据库 文件不全有损坏
然后看看了备份很欣慰
然后 就想把备份的数据库导入 到现在数据中,
mysql -uroot -p 但是输入密码后提示没有权限
mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
但是我cenntos时候是默认的数据 在远程客户端也能连接
用ssh 在本机上就连不上了
百度了一下是没有复权限
解决办法
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <输入新设的密码newpassword
然后在mysql restart 的时候报 mysql 停止失败的错误
然后他停止启动 都不行了
top 了一下
看到有myql的进程
用mysqladmin命令提示如下错误
mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/var/lib/mysql/mysql.sock' exists!
查看一下mysql的进程
ps axu|grep mysql
根据pid
kill -9 mysql 的进程
然后重启 停止终于正常了
mysql -uroot -p 登录一下正常
这时候 本地权限也解决
在先一步就是导入数据
./mysql dycme(数据库名)<dycme.sql(源)
然后查看web项目运行正常