HUGE Security hole in Mac OS X Lion

“It’s a pretty big deal for customers using LDAP as their authentication scheme, and it demonstrates that enterprise deployment scenarios are obviously not part of Apple’s regression testing plan,” said Alex Stamos, one of the researchers at iSec Partners who said large corporate customers probably shouldn’t deploy large number of Macs for now. “Hopefully heavy coverage of these issues will lead Apple to invest security resources into improving the areas of OS X important to enterprise users, not just end consumers.”

http://www.theregister.co.uk/2011/08/26/mac_osx_lion_security_hole/

67 Open Source Replacements for Really Expensive Applications – Datamation

I think it is sad that people actually think that mysql is a replacement for sql server. Anyone who claims that mysql is competitive knows nothing about databases. Sql server is more free than mysql!!! Sql server express is better than any edition of crystal reports!

http://www.datamation.com/open-source/67-open-source-replacements-for-really-expensive-applications-1.html

Missing Indexes – great script for determining ROI

I really don’t know how we ever survived without Dynamic Management Views.. they were released in SQL 2005.. I just love some of the new functionality that the provide.

This is one of my favorite script in the whole wide world.. It helps to create a ROI calculation for indexes that SQL Server recommends

This script is currently configured to provide ‘create index’ scripts for any indexes with an ROI score greater than 100. I generally start at the Score = 1000, and then if I still need more indexing, I change the variable in the where clause from 1000 down to 100 , and eventually down to 10.

I think that it’s important to do this in two steps though.

Here is my script, please let me know what you think, if you need any help with this, try to email me at aaron.kempf@gmail.com


SELECT 'create index IX_' + REPLACE(sys.objects.NAME, ' ', '_') +
Replace(ISNULL(REPLACE('_'
+
REPLACE(REPLACE(REPLACE(mi_details.equality_columns COLLATE SQL_Latin1_General_CP1253_CI_AI, '-', '_'), ']', ''), '[', ''), ',', '_'), ''), ' ', '')
+
Replace(ISNULL(REPLACE('_'
+
REPLACE(REPLACE(REPLACE(mi_details.inequality_columns COLLATE SQL_Latin1_General_CP1253_CI_AI, '-', '_'), ']', ''), '[', ''), ',', '_'), ''), ' ', '')
+
' on ['
+
sys.objects.name COLLATE SQL_Latin1_General_CP1253_CI_AI
+
']('
+
COALESCE (mi_details.equality_columns COLLATE SQL_Latin1_General_CP1253_CI_AI
+
','
+
mi_details.inequality_columns, mi_details.equality_columns,
mi_details.inequality_columns) + ') '
+
ISNULL(' include (' + mi_details.included_columns COLLATE SQL_Latin1_General_CP1253_CI_AI + ')', '') AS CreateIndexSql,
(CONVERT(Numeric(19, 6),mi_groupstats.user_seeks) + CONVERT(Numeric(19, 6), mi_groupstats.unique_compiles)) * CONVERT(Numeric(19, 6), mi_groupstats.avg_total_user_cost)
* CONVERT(Numeric(19, 6), mi_groupstats.avg_user_impact / 100.0) AS Score,
sys.schemas.schema_id,
sys.schemas.name AS schema_name,
sys.objects.object_id,
sys.objects.name AS object_name,
sys.objects.type,
partitions.Rows,
partitions.SizeMB,
mi_details.equality_columns,
mi_details.inequality_columns,
mi_details.included_columns,
mi_groupstats.unique_compiles,
mi_groupstats.user_seeks,
mi_groupstats.user_scans,
mi_groupstats.avg_total_user_cost,
mi_groupstats.avg_user_impact,
mi_groupstats.last_user_seek,
mi_groupstats.last_user_scan,
mi_groupstats.system_seeks,
mi_groupstats.system_scans,
mi_groupstats.avg_total_system_cost,
mi_groupstats.avg_system_impact,
mi_groupstats.last_system_seek,
mi_groupstats.last_system_scan
FROM sys.objects INNER JOIN
(SELECT object_id, SUM(CASE WHEN index_id BETWEEN 0 AND 1 THEN row_count ELSE 0 END) AS Rows, CONVERT(numeric(19, 3), CONVERT(numeric(19, 3),
SUM(in_row_reserved_page_count + lob_reserved_page_count + row_overflow_reserved_page_count)) / CONVERT(numeric(19, 3), 128))
AS SizeMB
FROM sys.dm_db_partition_stats
WHERE (index_id BETWEEN 0 AND 1)
GROUP BY object_id) AS partitions
ON sys.objects.object_id = partitions.object_id
INNER JOIN
sys.schemas
ON
sys.objects.schema_id = sys.schemas.schema_id
INNER JOIN
sys.dm_db_missing_index_details AS mi_details
ON
sys.objects.object_id = mi_details.object_id
INNER JOIN
sys.dm_db_missing_index_groups AS mi_groups
ON
mi_details.index_handle = mi_groups.index_handle
INNER JOIN
sys.dm_db_missing_index_group_stats AS mi_groupstats
ON
mi_groups.index_group_handle = mi_groupstats.group_handle
WHERE (mi_details.database_id = DB_ID()) AND ((CONVERT(Numeric(19, 6), mi_groupstats.user_seeks) + CONVERT(Numeric(19, 6), mi_groupstats.unique_compiles))
* CONVERT(Numeric(19, 6), mi_groupstats.avg_total_user_cost) * CONVERT(Numeric(19, 6), mi_groupstats.avg_user_impact / 100.0) > 100)
ORDER BY Score DESC

Jewlett-Packard

Yes, I’m just as dissappointed with HP as anyone could be.. I just hope that Windows 8 fills the void!

Yes, it was short-sighted for HP to pour $10 billion into WebOS.. and I think that they should have kept on spending until there was nothing left..

but calling them Jewlett-Packard?
Just because they’re too cheap to innovate?

I just don’t know how stuff like this gets past editors!!!

Optic Fusion | Cage And Bandwidth Specials

 

 

 

 

 

 

 

 

Optic Fusion | Cage And Bandwidth Specials

Optic Fusion Fall Specials

Single Server and 5 Mbps for only $99 per month.
Half Cabinets starting at $300 per month.
Full Cabinets starting at $650 per month.
Full cabinet with 100 Mbps for only $1450 per month.
Bulk bandwidth available for $15 per meg.
New customers only, limited quantities available.
We offer a wide variety of packages and discounts, email us at sales@opticfusion.net today and let us build a bundled package for you!